我有两张桌子:
Table1
[ID] [Number]
1 40
2 100
3 7
和
Table2
[ID] [Number] [Name]
1 40 A
3 7 C
数据源自Table1,然后在某些进程完成后复制到Table2(带有添加的Name)。我正在尝试SELECT
Table1中的所有内容,同时还显示Table2中的Name字段,如果它存在的话。如果“名称”字段不存在(或者更准确地说,如果表2中尚不存在该ID),我希望将该字段留空。
期望的输出:
[ID] [Number] [Name]
1 40 A
2 100
3 7 C
尝试:
SELECT Table1.ID,Table1.Number,Table2.Name
WHERE Table1.ID=Table2.ID
我目前的尝试已完全省略,[ID] 2
因为我正在尝试的语句是在两个表中查找ID,并且只在Table1中找到它。我的猜测是我可能需要使用COALESCE
,ISNULL
或者a JOIN
,所有这些对我来说都是陌生的。这些(或许多的组合)中的任何一个是适合这项工作的工具吗?有没有办法Name
只有在存在时才能包含该字段,否则将其留空?