Как написать, где можно приравнять двух столбцов содержит как NULL и пустые значения
Учитывая мой структуры таблицы, теперь мне нужно написать запрос для сравнения «STRVAL1 и STRVAL2», затем «BVAL1 и BVAL2» , если оба они не совпадают, то эта строка должна быть возвращена.
Ожидаемый результат ...
Пожалуйста, используйте сильфона скрипт для данных
DECLARE @TAB TABLE (ID INT, STRVAL1 VARCHAR(8), STRVAL2 VARCHAR(8), BVAL1 BIT, BVAL2 BIT)
INSERT INTO @TAB VALUES
(1, NULL, NULL, NULL, NULL)
, (2, '', NULL, NULL, NULL)
, (3, '', '', NULL, NULL)
, (4, 'VAL', 'VAL', NULL, NULL)
, (5, 'VAL1', 'VAL2', NULL, NULL)
, (6, NULL, NULL, 0, NULL)
, (7, NULL, NULL, 0, 0)
, (8, NULL, NULL, 1, 1)
, (9, NULL, NULL, 1, 0)
SELECT ID, STRVAL1, STRVAL2, BVAL1, BVAL2
FROM @TAB
Что-то, как с помощью ISNULL (Field, «») <> «» – ThatChris
@Christopher - это думает о ISNULL и COALESCE - но что, если не нулевая сторона содержит свое альтернативное значение - если вы COALESCE к ' N/A ', это идет не так, если вы comapre к' N/A '- плюс другой - бит поле – Cato