喜在CASE表達式,其中返回多行一subquery
,它給錯誤說subquery returns more than one row
但我subquery
總是會返回超過1
越來越需要的所有fetch查詢返回的行。案例表達錯誤時,子查詢返回不止一個錯誤
你能幫我調整查詢嗎?
SELECT TS.ts_test_id "TEST ID",
TS.ts_name "TEST NAME",
TS.ts_responsible "Designer",
DS.ds_step_order "Step Order",
DS.ds_step_name "Step Name",
TS.TS_USER_02 "Application",
CASE
WHEN DS.ds_link_test is NULL THEN DS.ds_description
ELSE
CASE
WHEN DS_LN.ds_link_test is NULL THEN DS_LN.ds_description
ELSE
**(SELECT ds_description from DESSTEPS where ds_test_id = DS_LN.ds_link_test)**
END
END "Step Description",
CASE
WHEN DS.ds_link_test is NULL THEN DS.ds_expected
ELSE
CASE
WHEN DS_LN.ds_link_test is NULL THEN DS_LN.ds_expected
ELSE
**(SELECT ds_expected from DESSTEPS where ds_test_id =DS_LN.ds_link_test)**
END
END "Expected Result"
FROM dessteps DS
LEFT JOIN dessteps DS_LN ON DS_LN.ds_test_id = DS.ds_link_test
JOIN test TS ON DS.ds_test_id = TS.ts_test_id
AND TS.TS_USER_02 = 'ABINRIM' --CHANGE THE APP NAME
ORDER BY DS.ds_step_order
您可以發佈一些示例數據和您試圖創建的輸出嗎?另外,你使用的是什麼數據庫/ SQL版本? – mlinth 2014-10-17 08:16:24
我其實我在質量中心數據庫執行這個查詢主要是oracle。用星號加亮的Select查詢返回兩行或更多行。功能性是有兩個表Test和DESSTPES。對於每個TEST表,在DESTEPS TABLE中可能有多行,並且可能存在TEST表的鏈接。當一個測試有一個設計步驟,這反過來又要求另一個設計步驟,並且設計步驟可能會導致另一個步驟,這個鏈接就是這樣的。 – Ramya 2014-10-17 08:44:04