1. ホーム
  2. sql

[解決済み] SQL Server の CASE ステートメントで OR がサポートされていない。

2022-03-16 09:44:16

質問

その OR 演算子で WHEN の節は CASE 文はサポートされていません。どうすればよいですか?

CASE ebv.db_no 
    WHEN 22978 OR 23218 OR 23219 THEN 'WECS 9500' 
    ELSE 'WECS 9520' 
END as wecs_system 

解決方法は?

そのフォーマットでは、どちらかを使用する必要があります。

CASE ebv.db_no 
  WHEN 22978 THEN 'WECS 9500' 
  WHEN 23218 THEN 'WECS 9500'  
  WHEN 23219 THEN 'WECS 9500' 
  ELSE 'WECS 9520' 
END as wecs_system 

それ以外の場合は、使用してください。

CASE  
  WHEN ebv.db_no IN (22978, 23218, 23219) THEN 'WECS 9500' 
  ELSE 'WECS 9520' 
END as wecs_system