0
我有一個關於SQL的問題。從一個sql查詢獲取記錄並在另一個查詢中使用
SELECT TOP (10) ordr.ordID
FROM [inSight].[dbo].[Orders] ordr
INNER JOIN [inSight].[dbo].[OrderLines] ordn ON ordr.ordID = ordn.ordID
JOIN [inSight].[dbo].[OrderLineAttributeValues] atr ON ordn.olnID = atr.olnID
WHERE
atr.atbID=190 AND
atr.olnavValue=1
(上面的查詢返回多個結果)
所以我想要做的是,從上述查詢抓取結果,並通過一個使用它下面的查詢之一。
SELECT op.optCode
FROM [inSight].[dbo].[Orders] ordr
INNER JOIN [inSight].[dbo].[OrderLines] ordn ON ordr.ordID = ordn.ordID
JOIN [inSight].[dbo].[OrderLineOptions] ordlo ON ordn.olnID = ordlo.olnID
JOIN [inSight].[dbo].[Features] ftr ON ordlo.ftrID = ftr.ftrID
JOIN [inSight].[dbo].[Options] op ON ftr.ftrID = op.ftrID
WHERE
ordr.ordID = @OrderNumber AND
ftr.ftrID = 1477 AND
ordlo.optid = op.optID
上面的變量OrderNumber是第一個查詢的結果。
我不想使用遊標,那麼有沒有其他方法可以解決這個問題?
只需使用'WHERE ordr.ordID在(第一個查詢HERE)' – valex
我需要一個從第一查詢一個獲取記錄! 添加where子句不會有多大幫助! – CodeJockey
你是什麼意思的「一個一個」?上面的查詢中沒有任何需要的查詢。而valex的正確響應不會添加WHERE子句,它只會改變已經存在的那個子句。 – RBarryYoung