2017-12-15 21 views
0

CASEに "OR"句を含めるようにしていますが、そのまま受け取りますmysqlに "or"を含めるとエラーコード:1241.オペランドには1列が含まれています

「エラーコード:1241オペランドが1列(複数可)

が含まれている必要があります。ここのクエリのサンプルです

 select [...], 
      CASE 
       when category1.Category1Name in (...) or category1.Category1Name like (...) then 'L-ACCESSORIES' 
       when[...] 
      end as 'Style' 
     from [...] 

誰かがこの上でいくつかなどを当てることができれば、それは多くのだろう感謝します。

+0

更新: 'like'ビットのコンマ区切りリストの代わりに 'or'を使用すると、問題が解決されるようです。 –

答えて

0

完全にmysqlの

SELECT OrderID, Quantity, 
CASE 
    WHEN Quantity like 3 or quantity like 100 THEN "The quantity is either 3 or 100" 

    ELSE "The quantity is something else" 
END 
FROM OrderDetails; 

に働いたが、私はようの代わりに、を使用する場合、それはそう問題はでていない動作しませんでしたか、それがでます。この構文==> 。各ケースも閉じておく必要があります

0

問題の原因は、likeです。 1つの値しか含めることができません。書く場合

like(1,2) 

このエラーが発生します。

他の操作はすべてmysqlで動作するはずです。

+0

これは問題でした。コンマを 'または'に置き換えるだけでうまくいきました。 乾杯! –

+0

素晴らしいです。 – isaace

関連する問題