sql - 从一个表中选择所有记录并从另一个表中选择引用值?

标签 sql sql-server postgresql join

2 个表:

table1 (id, name)
table2 (id, table1_id, unique_identifier)

我想获取表 1 中的所有行,并针对每一行确定表 2 中是否有具有特定 unique_identifier 的行。

例子:

tabel1:
1, name1
2, name2
3, name3

table2:
1, 2, ident1
2, 3, ident2

我想要的结果:

name1
name2, ident1
name3, ident2 

最佳答案

你可以为此使用LEFT JOIN

SELECT table1.name, table2.unique_identifier 
FROM table1
LEFT JOIN table2 
ON table1.id = table2.table1_id

这样,如果第二个表中没有相应的记录,您将在唯一标识符列上得到 null

关于sql - 从一个表中选择所有记录并从另一个表中选择引用值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41212621/

相关文章:

sql - 部分不同的选择

sql - Postgresql在BEGIN附近创建函数语法错误

sql - PostgreSQL 错误 : query has no destination for result data

sql - Postgresql LATERAL 与 INNER JOIN

sql - oracle(通过 sql/plus)如何确定用于评估 sql 脚本的字符集

sql-server - 在 SQL 2000 中打开一个 .BAS DTS 包?

java - 列名中的正斜杠引发语法错误 "/"

javascript - Breeze Sequelize 与 MSSQL 可能吗?

postgresql - psql : FATAL: Ident authentication failed for user "xxx" with method trust

database - 尝试删除结构时出现 Ecto 约束错误