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)
всякий раз, когда @cityID
равен NULL
, t.CityID
также NULL
для этой записи.
Только одна запись может быть истинной для IsProvince
Есть ли способ проверить без выполнения условия if-else
, хочу ли я сделать следующее:
1) Если @cityID
равно NULL
, то получить запись, чья IsProvince
равна 1
2) Если @cityID
равен NOT NULL
, получите запись, чья CityID = @cityID
Спасибо,
Voodoo