Должен ли я ввести новую категорию для моего расширения VS?

Я просто не вижу, чтобы функциональная и цельная причина того, что нули не были сопоставимы с другими значениями или другими значениями нуля, потому что мы можем четко сравнить их и сказать, что они одинаковы или нет в нашем контексте. Это забавно. Просто из-за некоторых логических выводов и последовательности мы должны постоянно беспокоиться об этом. Он не работает, делает его более функциональным и оставляет его философам и ученым, если они согласуются или нет, и придерживаются ли они «универсальной логики». :) Кто-то может сказать, что это из-за индексов или чего-то еще, я сомневаюсь, что эти вещи не могут быть использованы для поддержки нулей, таких же, как значения. Это то же самое, что сравнивать два пустых стакана, один - виноградное стекло, а другое - это пивное стекло, мы не сравниваем типы объектов, но значения, которые они содержат, так же, как вы могли бы сравнить int и varchar, с нулевым, это еще проще, это ничего и что два ничего не имеют общего, они одинаковы, четко сопоставимы мной и всеми остальными, которые пишут sql, потому что мы постоянно нарушаем эту логику, сравнивая их странными способами из-за некоторых стандартов ANSI. Почему бы не использовать компьютерную мощь, чтобы сделать это для нас, и я сомневаюсь, что это замедлит работу, если все, что связано, будет построено с учетом этого. «Это не пусто, это ничего», это не яблоко, это апфель, давай ... Функционально ваш друг, и здесь есть логика. В конце концов, единственное, что имеет значение, - это функциональность, и использование нулей таким образом обеспечивает более или менее функциональность и простоту использования.

Рассмотрим этот код:

SELECT CASE WHEN NOT (1 = null or (1 is null and null is null)) THEN 1 ELSE 0 end

Сколько из вас знает, что будет возвращать этот код? С или без НЕ возвращает 0. Мне это не работает, и это запутывает. В c # это все так, как должно быть, операции сравнения возвращают значение, логически это тоже приводит к значению, потому что, если это не так, сравнивать нечего (кроме. Ничего :)). Они просто «сказали»: что-то по сравнению с нулевыми «возвращает» 0, и это создает много обходных решений и головных болей.

Это код, который привел меня сюда:

where a != b OR (a is null and b IS not null) OR (a IS not null and b IS null)

Я просто нужно сравнить, если два поля (где) имеют разные значения, я мог бы использовать функцию, но ...

0
задан Erich 4 March 2019 в 14:26
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: