sql将列添加到结果中

时间:2014-10-24 23:02:35

标签: mysql sql sql-server

所以我希望将itemlookupcode添加到查询结果中。 itemlookupcode位于项目表中,但查询针对的是另一个表。两个表都有itemdescription,但是当我进行连接或离开连接时,它会得到重复。

select * 
from [RAPurchaseOrderTransfer] 
where QtyDifference <> 0 
and fromstoreid = 111 
and DateCreated >= dateadd(dd, -30, GETDATE())

任何想法如何将item.lookupcode添加到结果中?

1 个答案:

答案 0 :(得分:0)

为避免重复,您可以执行嵌套选择以获取itemlookupcode。

使用MySQL它看起来像这样(限制1只返回1):

(select i.itemlookupcode from item i where i.itemdescription = r.itemdescription limit 1)

使用SQL Server,它看起来像这样:

(select top 1 i.itemlookupcode from item i where i.itemdescription = r.itemdescription)

例如:

select 
r.*,
(select top 1 i.itemlookupcode from item i where i.itemdescription = r.itemdescription)
from [RAPurchaseOrderTransfer] r
where r.QtyDifference <> 0 
and r.fromstoreid = 111 
and r.DateCreated >= dateadd(dd, -30, GETDATE())