Question

Existe-t-il un moyen de vérifier un cas lorsqu'il est dans un tableau:

SELECT CASE [Option] WHEN IN (1, 3, 99) THEN 'Wrong option' ELSE 'You go!' END
Était-ce utile?

La solution

SELECT CASE WHEN [Option] IN (1, 3, 99) THEN 'Wrong option' ELSE 'You go' END

Autres conseils

Vous pouvez utiliser le CASE WHEN <predicate> THEN <value> ... END option, plutôt que le CASE <value> WHEN <value> THEN <value> ... END option.

SELECT CASE WHEN [Option] IN (1, 3, 99) THEN 'Wrong option' ELSE 'You go!' END

... Mais si les valeurs sont dans une table, vous pouvez simplement faire une jointure extérieure (et

CASE WHEN t.Value IS NULL THEN 'Not in list' ELSE 'In list' END

, ou

CASE WHEN EXISTS (SELECT * FROM yourTable t WHERE t.value = [Option]) THEN 'Bad' ELSE 'Ok' END

... sans rejoindre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top