2010-09-17 2 views
7

Можно создать дубликат:
Testing for inequality in T-SQLSQL фундаментальный вопрос '=!' Против '<>' против 'Не'

Привет,

делает там по-другому использовать '! =' vs '<>' vs 'Not'?

который один будет иметь худшие показатели

или она существует только из-за синтаксиса обратной совместимости?

+0

возможно дубликат: http://stackoverflow.com/questions/7884/testing-for -inquality-in-t-sql – ninesided

ответ

10
  • NOT не всегда действуют одинаково
  • != или <> идентичны, нет устаревания упомянуто. <> является ISO, хотя
+3

Yup; НЕ несколько отличается. Это для таких вещей, как «Blank NOT IN (stuff ...)» или «Blank NOT NULL» и т. Д. –

+0

@ Андрю Парикмахер: спасибо, хороший пример, я просто работал над примером, но твоя его хорошо красиво – gbn

+1

У меня создалось впечатление, что это был '<>', который был стандартным оператором неравенства ANSI. – ninesided

5

AFAIK, если вы хотите, чтобы проверить на NULL, вы должны использовать IS NOT и не != или <>

+0

yeah 'when 'foo' = null' возвращает' null', а не 'true' или' false' –

+0

+1 @alxx: вы могли бы использовать '! =' или '<>' с результатом COALESCE, хотя , –

Смежные вопросы