SQL / Postgres join where子句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL / Postgres join where子句相关的知识,希望对你有一定的参考价值。

我有2张桌子观察和研究。研究包含研究的名称(研究),研究中每个对象的ID以及开始日期和结束日期

观察包含ID,日期(观察日期)和观察(列名'评论')

我想从研究中获取与研究名称匹配的所有ID(从研究中选择ID,其中study =“ ST009”)然后,我想从与2个日期之间的研究ID匹配的观察值中获取所有观察值(日期可以是2个日期,不限于start_date和end_date)

研究表:

study   id   start_date   end_date
ST0009  A    2019-01-01   2019-02-15
ST0009  B    2019-01-01   2019-02-15
ST0009  C    2019-01-01   2019-02-15
ST0010  D    2019-01-10   2019-02-20
ST0010  D    2019-01-10   2019-02-10

观察表

date       id  comments
2019-01-02 A   Cracks on edges
2019-01-02 B   Soft center
2019-01-10 A   Cracks moving to the center
2019-01-11 D   Curled edges 
2019-01-12 A   Edges separating from body
2019-01-15 D   Curled edges cracking
2019-01-25 B   Center becoming solid

结果:

ID  observations.date observations.comment
A   2019-01-02       Cracks on edges
A   2019-01-10       Cracks moving to the center
A   2019-01-12       Edges separating from body
B   2019-01-02       Soft center
B   2019-01-25       Center becoming solid
C

希望这很有意义

答案

只需加入表并在WHERE子句中应用过滤器。

以上是关于SQL / Postgres join where子句的主要内容,如果未能解决你的问题,请参考以下文章

sql中where的与jnner join on的连接条件.哪个优先级别高?

SQL JOIN + WHERE [关闭]

在 SQL/MySQL 中,join 语句中的“ON”和“WHERE”有啥区别?

带有 JOIN 和 WHERE 子句的 SQL 语句

sql语句中left join和inner join中的on与where的区别分析

sql中 INNER JOIN LEFT JOIN RIGHT JOIN FULL JOIN 中 ON与Where的区别