DECLARE @cityID bigint;
set @cityID = NULL
--set @cityID = 3
SELECT ID,
Name,
CityID,
IsProvince
FROM TABLE t
WHERE ISNULL(t.CityID, -1) = ISNULL(@cityID, -1)
chaque fois que le @cityID
est NULL
le t.CityID
est également NULL
pour cet enregistrement.sql question, alternative à if-else pour cet exemple?
Un seul enregistrement ne peut jamais être vrai pour IsProvince
Y at-il un moyen de vérifier sans faire la clause if-else
si je veux faire ce qui suit:
1) Si le @cityID
est NULL
, puis obtenir l'enregistrement dont IsProvince
est 1
2) Si le @cityID
est NOT NULL
alors obtenir l'enregistrement dont CityID = @cityID
Merci,
Voodoo
Cela a du sens, merci. – VoodooChild
Je m'inquiétais de ne pas avoir compris complètement le besoin, donc de demander si cela avait du sens ... – davisoa
:) non, vous l'avez. C'était juste une de ces périodes où votre cerveau frappe un mur de brique et vous commencez à poser vos questions au lieu de penser pendant quelques minutes .... – VoodooChild