Выполнение сравнения пар столбцов, пытаясь найти те, которые не соответствуютSQL сравнения столбец сервера, включая Null/Не Null
SELECT
RecID,
Field1,
Field2
FROM
TestTable
WHERE
Field1 != Field2
Однако я хочу, чтобы включить NULLS в моем чеке. Null в обоих столбцах справедливо, однако Null в одном столбце, а не в другой недопустим, так должно быть включено в выходной
SELECT
RecID,
Field1,
Field2
FROM
TestTable
WHERE
(Field1 != Field2)
OR (Field1 IS NULL AND Field2 IS NOT NULL)
OR (Field1 IS NOT NULL AND Field2 IS NULL)
Является ли это лучший способ, чтобы написать это, или есть опрятнее/лучше способ сделать Null
/Not Null
сравнение?
Это выглядит хорошо для меня, в чем проблема этого? – JonH
@JonH Может быть, не будет никаких проблем с этим. Я знал, что так работает, но хотел знать, есть ли «правильный» способ сделать это. Если у меня есть проблема с тем, что я делаю это так, просто мой пример выше довольно упрощен - мой фактический сравнительный запрос намного больше (гораздо больше столбцов), поэтому, если есть лучший/более быстрый/более короткий способ сравнения возможно, это упростило мой запрос. – Midavalo
Это правильный путь. – JonH