0

这标志着我第一次提出有关堆栈溢出的问题,并且可能是我访问该站点的第 5000 次。所以首先,感谢您的辛勤工作!

所以我在一个表上有一个基本的选择查询,它返回两行相似的数据,并通过一个共享的 PK 链接。

我想从第一行中检索所有字段,并且在别名下仅检索第二行中的一列。

基本上将两条记录拼合为一条,但仅使用第二行中的一列。

好的,这是一个屏幕截图。

http://www.flickr.com/photos/imagevault/8581053528/

查看第一个结果窗口,我希望第二个“Comp”值显示为第一行的附加列,作为“RentalComp”。如果给定的 propertyid 只返回一行,则它可以为 null。

谢谢!

..我不知道谷歌要做什么,所以我在这里。

4

2 回答 2

1
SELECT a.*, b.Comp AS RentalComp
FROM dbo.vwComps AS a LEFT OUTER JOIN dbo.vwComps AS b ON a.PropertyID = b.PropertyID 
AND b.ConfigurationUsed = 2
WHERE (a.ConfigurationUsed = 1)

关键是在“ON”语句中指定了多个条件。然后在 where 子句中进行基本过滤。

我一直试图在它过滤掉所有东西的地方做所有事情。

于 2013-03-22T19:05:55.903 回答
0

这是你要找的吗?

SELECT t1.*, 
       t2.col
FROM   table1 t1
       JOIN table2 t2
       ON t1.key = t2.key
于 2013-03-13T09:46:21.997 回答