pickespik

LIKE in SELECT CASE

Wie kann ich einen String-Vergleich in einem SELECT realisieren?

Hallo zusammen!

Ich habe in einer Spalte (SpA) einen String stehen der wie folgt aussehen sollte: #####/* (also 5 Zeichen, einen Schrägstrich, x Zeichen). Nun möchte ich in einer anderen Spalte (SpB) eintragen, ob der String in SpA korrekt ist. Ich hatte mir das wie folgt vorgestellt (MSSQL):

SELECT CASE SpA WHEN LIKE '_ _ _ _ _/*' THEN 'true' ELSE 'false' END AS SpB FROM...

Jetzt ist ja aber ein "LIKE" im SELECT CASE Statement nicht möglich und ich komme einfach nicht darauf, wie ich das anders realisieren soll.
Ich hoffe mir kann evtl. jmd. weiterhelfen.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 190123

Url: https://administrator.de/forum/like-in-select-case-190123.html

Ausgedruckt am: 30.04.2025 um 21:04 Uhr

LianenSchwinger
LianenSchwinger 24.08.2012 aktualisiert um 08:54:18 Uhr
Goto Top
Hallo,

versuch mal

SELECT CASE WHEN SpA LIKE '_____/%' THEN 'true' ELSE 'false' END AS SpB   
FROM...

siehe: http://msdn.microsoft.com/de-de/library/ms181765.aspx

In SQL ist '%' der Platzhalter für beliebige Zeichen.

siehe: http://msdn.microsoft.com/de-de/library/ms179859.aspx

Gruß Jörg
Pickespik
Pickespik 24.08.2012 um 09:25:55 Uhr
Goto Top
Es funktioniert!
Das % anstatt * war mir bewusst, hatte ich nur in der Fragestellung nicht berücksichtigt.
Die Lösung war aber anstatt
SELECT CASE SpA WHEN LIKE ... 
zu schreiben
SELECT CASE WHEN SpA LIKE ...
Bei der ersten Variante kam immer die Fehlermeldung "'LIKE' not recognized' daher dachte ich, dass dies allgemein für das CASE Statement gilt. Aber wie gesagt, mit der zweiten Variante funktioniert es.
Vielen Dank!
LianenSchwinger
LianenSchwinger 24.08.2012 um 09:27:16 Uhr
Goto Top
Dann bitte die Frage als gelöst markieren face-smile