2015-05-29 120 views
2

需要從那時到價值只返回,但我的查詢返回的1S選擇案例Statment單行子查詢返回不止一行

SELECT 
CASE WHEN S.ITEM_ID<>0 THEN 1 
END AS "UomLevelEditable" 
FROM BIZZXE_V2_SCH.PO_REQUEST_ITEMS S WHERE S.ITEM_Id =209 AND S.UOM_ID= 55 
+1

這裏是子查詢? – Matt

+2

在表中選擇獨特的案例.... –

+0

也ITEM_ID + uom_id必須是唯一的,或者兩個一 –

回答

2

如果你想正是一排,然後用聚合:

SELECT MAX(CASE WHEN S.ITEM_ID <> 0 THEN 1 END) AS "UomLevelEditable" 
FROM BIZZXE_V2_SCH.PO_REQUEST_ITEMS S 
WHERE S.ITEM_Id = 209 AND S.UOM_ID = 55; 

如果你想最多一排,然後用rownum = 1

SELECT (CASE WHEN S.ITEM_ID <> 0 THEN 1 END) AS "UomLevelEditable" 
FROM BIZZXE_V2_SCH.PO_REQUEST_ITEMS S 
WHERE S.ITEM_Id = 209 AND S.UOM_ID = 55 AND rownum = 1; 
2

我認爲這可能對您有所幫助,我在下面用鮮明。

SELECT 
DISTINCT CASE WHEN S.ITEM_ID<>0 THEN 1 
END AS "UomLevelEditable" 
FROM BIZZXE_V2_SCH.PO_REQUEST_ITEMS S WHERE S.ITEM_Id =209 AND S.UOM_ID= 55 
+0

是謝謝它幫助我 – Beez

+0

@Beez請給予好評的答案,因此可以幫助其他人也是如此。 –