Я пытаюсь сделать следующее:
IF NOT EXISTS (
SELECT *
FROM [tbl_web_company]
WHERE [name] = @name
AND [address1] = @address1
AND [address2] = @address2
AND [city] = @city
AND [province_id] = @province_id
AND [postal_code] = @postalcode
AND [contact_phone] = @phone
AND [contact_fax] = @fax
AND [deleted] = dbo.pvd_fn_getDeletedDate(@id, @active))
BEGIN
SELECT 'update'
END
ELSE
BEGIN
SELECT 'no update'
END
В основном я пытаюсь увидеть, изменился ли какой-либо из столбцов, но у меня возникают проблемы, когда @province_id и dbo.pvd_fn_getDeletedDate (@id, @active) равны NULL в базе данных, и оба установлены как NULL ,
Код провинции - INT - Nullable
Удалено Datetime - Nullable.
Если запись в базе данных имеет NULL для обоих этих значений, тогда всегда будет выбрано «обновить». Что неправильно, так как [провинция_идентификатор] и [удалено] равны NULL.
Любые предложения, как обрабатывать NULLS в этом случае?