Ce que j'essaie de faire, c'est d'utiliser plus d'une condition CASE WHEN pour la même colonne.
Voici mon code pour la requête:
SELECT Url='',
p.ArtNo,
p.[Description],
p.Specification,
CASE
WHEN 1 = 1 or 1 = 1
THEN 1
ELSE 0
END as Qty,
p.NetPrice,
[Status] = 0
FROM Product p (NOLOCK)
Cependant, ce que je veux faire, c'est utiliser plus d'un WHEN pour la même colonne "qty".
Comme dans le code suivant:
IF
// CODE
ELSE IF
// CODE
ELSE IF
// CODE
ELSE
// CODE
sql
sql-server-2008
Nils Anders
la source
la source
case when <condition> then <vaue> when <condition> then <value> . . . end
qui ne fonctionne pas?WHEN
.Réponses:
Il existe deux formats d'expression de cas . Vous pouvez faire
CASE
avec beaucoupWHEN
comme;Ou une
CASE
expression simpleOu à l'
CASE
intérieurCASE
comme;la source
Utilisez simplement celui-ci, vous devez en utiliser plus quand ce sont des cours.
la source
Vous pouvez utiliser l'exemple ci-dessous de cas avec plusieurs conditions.
la source
Cela peut être un moyen efficace d'effectuer différents tests sur une seule instruction
cela ne fonctionne que sur les comparaisons d'égalité!
la source
la source
la source
J'avais un similaire mais il s'agissait de dates. Requête pour afficher tous les éléments du mois dernier, fonctionne très bien sans conditions jusqu'en janvier. Pour que cela fonctionne correctement, vous devez ajouter une variable année et mois
Maintenant, je viens d'ajouter la variable en condition: ...
la source
Combiner toutes les conditions
la source
Quelque chose comme ça, deux conditions, deux colonnes
la source
C'est juste que vous avez besoin de plusieurs
When
pour qu'un seul cas se comporte commeif.. Elseif else..
la source