607 Stimmen

OR wird bei der CASE-Anweisung in SQL Server nicht unterstützt

El OR Operator in der WHEN Klausel einer CASE Anweisung wird nicht unterstützt. Wie kann ich dies tun?

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

34voto

JNK Punkte 60318

Versuchen Sie

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

28voto

Archu Punkte 281
SELECT
  Store_Name,
  CASE Store_Name
    WHEN 'Los Angeles' THEN Sales * 2
    WHEN 'San Diego' THEN Sales * 1.5
    ELSE Sales
    END AS "New Sales",
  Txn_Date
FROM Store_Information;

3voto

Anand agrawal Punkte 454
UPDATE table_name 
  SET column_name=CASE 
WHEN column_name in ('value1', 'value2',.....) 
  THEN 'update_value' 
WHEN column_name in ('value1', 'value2',.....) 
  THEN 'update_value' 
END

table_name = Der Name der Tabelle, auf der Sie die Operation durchführen möchten.

column_name = Der Name der Spalte/des Feldes, dessen Wert Sie festlegen möchten.

update_value = Der Wert, den Sie für column_name

3voto

Debendra Dash Punkte 4674
select id,phno,case gender
when 'G' then 'M'
when 'L' then 'F'
else
'No gender'
end
as gender 
from contacts

1voto

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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X