我有一個Orders表,我想從Orders表中取出一些列,並從兩個OrderDetails表中的一個取決於Orders表中列的值。如何使用子查詢中的多個表達式創建一個SQL存儲過程
訂單
OrderID Pk int
OrderDetails_A_ID
OrderDate
OrderedById
OrderDetails_A
OrderDetails_A_ID Pk int
OrderID Fk int
Qty_A
ItemDesc_A
OrderDetails_B
OrderDetails_B_ID Pk int
OrderID Fk int
Qty_B
ItemDesc_B
這裏是我硝酸鉀w不起作用,但我想要做的。
SELECT O.OrderDate,O.OrderedByID,
CASE WHEN O.OrderDetails_A_ID IS NULL
THEN
SELECT B.ItemDesc_B as ItemDesc,B.Qty_B as Qty
ELSE
SELECT A.ItemDesc_A as ItemDesc,A.Qty_A as Qty
END
FROM Orders as O
會,即使編譯? – GSerg
不,但他的例子都不會。我假設他沒有包含他的JOIN標準,因爲他已經知道如何進行加入,並希望我們專注於對數據進行排序。 – ean5533