SQL 查询 Postgres 12
SQL query Postgres 12
我正在对 table 进行内部联接,如下所示:
SELECT *
FROM patient p
INNER JOIN
vaccine v
ON
p.vaccine_id = v.id
条件 f.vac_1 = mv.id
在某人未接种疫苗的情况下可能不满足。在这种情况下,我不想忽略该行,而是显示一个空字符串而不是显示疫苗名称(这是内部连接的目的)。
如何做到这一点?
例子
Table 疫苗
id
姓名
1
现代
2
社区
3
詹森
Table 患者
id
姓名
vaccine_id
1
约翰
1
2
柯密特
2
3
杰西卡
我正在寻找要生成的查询:
id
姓名
vaccine_id
1
约翰
现代
2
柯密特
社区
3
杰西卡
如果我没理解错的话,你想要一个以 foo
:
开头的 left join
SELECT *
FROM foo f LEFT JOIN
vac v
ON f.vac_1 = mv.id
我正在对 table 进行内部联接,如下所示:
SELECT *
FROM patient p
INNER JOIN
vaccine v
ON
p.vaccine_id = v.id
条件 f.vac_1 = mv.id
在某人未接种疫苗的情况下可能不满足。在这种情况下,我不想忽略该行,而是显示一个空字符串而不是显示疫苗名称(这是内部连接的目的)。
如何做到这一点?
例子
Table 疫苗
id | 姓名 |
---|---|
1 | 现代 |
2 | 社区 |
3 | 詹森 |
Table 患者
id | 姓名 | vaccine_id |
---|---|---|
1 | 约翰 | 1 |
2 | 柯密特 | 2 |
3 | 杰西卡 |
我正在寻找要生成的查询:
id | 姓名 | vaccine_id |
---|---|---|
1 | 约翰 | 现代 |
2 | 柯密特 | 社区 |
3 | 杰西卡 |
如果我没理解错的话,你想要一个以 foo
:
left join
SELECT *
FROM foo f LEFT JOIN
vac v
ON f.vac_1 = mv.id