根據欄位sSaleOrderCode進行判斷,如果S開頭顯示銷樣,G開頭顯示備胚,,其余大貨,但為什么報錯
訊息 512,級別 16,狀態 1,第 44 行
子查詢回傳的值不止一個。當子查詢跟隨在 =、!=、<、<=、>、>= 之后,或子查詢用作運算式時,這種情況是不允許的。
uj5u.com熱心網友回復:
CASE WHEN SSALEORDERCODE LIKE 'S%' THEN '銷樣' WHEN SSALEORDERCODE LIKE 'G%' THEN '備胚' ELSE '大貨' END AS '訂單型別'uj5u.com熱心網友回復:
不對,like語法錯誤uj5u.com熱心網友回復:
報錯不是已經告訴你,你的兩句帶like的子查詢有回傳超過一行結果的,你判斷開頭字母寫同表的子查詢干什么,資源再多也不是這樣用的,left或者substr不就好了uj5u.com熱心網友回復:
把你完整的代碼貼出來
uj5u.com熱心網友回復:
這個就是,我是測驗SQL陳述句可不可以查到,like不能當成when的判斷條件嗎?uj5u.com熱心網友回復:
LIKE是可以當when的判斷條件的,你的錯誤在于判斷條件值是一個子查詢的結果集,而這個結果集不止一條結果記錄,一對多如何判斷。
uj5u.com熱心網友回復:
解決了,case后多了個欄位名,感謝uj5u.com熱心網友回復:
不是case后多了個欄位名的問題,6樓正解轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/121372.html
標籤:基礎類
