1

假设我有两张桌子:

表格1

Id Name
1 Joe
2 Greg
3 Susan
4 Max

表2

Uid comment
2    Good customer
4    Great guy

我想要做的是列出表 1 的所有元素,如果 Table1.Id = Table2.Uid 我想选择这个评论。如果评论不存在,请给出空白字段。

结果应该是:

1 Joe 
2 Greg Good customer
3 Susan
4 Max Great Guy

如果我写,我不知道该怎么做:

select
table1.Id,
table1.Name,
table2.comment

where
table1.id=table2.Uid

它只给了我用户 2 和 4。

4

3 回答 3

4

尝试使用left join它向您显示所有数据table1

select t1.Id, t1.Name, t2.comment
from table1 t1
left join table2 t2 on t1.id=t2.Uid

注意

好的做法是使用上述别名。代码更具可读性。

于 2013-08-01T06:57:24.160 回答
1
select
table1.Id,
table1.Name,
table2.comment
from table1 left outer join table2 on table1.id=table2.Uid
于 2013-08-01T06:55:56.820 回答
0

这是一个经典的JOIN操作:

SELECT 
        t1.id, t1.name, t2.comment 
FROM 
       Table1 AS t1 
LEFT JOIN 
       Table2 AS t2 ON t1.id = t2.uid  
于 2013-08-01T06:57:16.357 回答