澄清基于列检索不同行

时间:2011-06-16 15:45:54

标签: sql sql-server

SQL Server 2008 R2

我有一张桌子 - 带有id,标题,名字,邮政编码的T1

第二个表 - 具有id,Title和PostalCode的T2。

id是T1中的主键,id是T2中对应的外键。 现在我想列出T1的标题,T2的标题和T1和T2之间匹配ID的id。

但是主要事项只是标题的不同列值,并且应显示它们的对应表T1和T2及其ID。 例如,如果找到值'Mr',如果找到第二次,则不应再次列出该值。

希望我明白。请指教。

2 个答案:

答案 0 :(得分:0)

这个例子有点令人费解,但我想我理解这个问题。

您希望使用Distinct关键字:

SELECT DISTINCT T1.Title 从T1 INNER JOIN T2开始T1.id = T2.id UNION ALL SELECT DISTINCT T2.Title 从T1 INNER JOIN T2开始T1.id = T2.id

这应该从T1和T2中获取不同的标题。我希望这是你正在寻找的,如果不是,请更清楚地描述你想要的结果,如果你能添加一个理想的表视图。

谢谢,

〜Madullah

答案 1 :(得分:0)

COALESCE()函数可能是你的朋友。