J'ai vu des fichiers SQL
qui utilisent à la fois !=
et <>
pour not equal. Quelle est la syntaxe préférée et pourquoi ?
J'aime bien !=
, parce que <>
me rappelle le Visual Basic
.
'<>'
' est issu de la [norme SQL-92][1] et `!='
' est un opérateur T-SQL [propriétaire][2]. Il est également disponible dans d'autres bases de données, mais comme il n'est pas standard, vous devez le prendre au cas par cas.
Dans la plupart des cas, vous saurez à quelle base de données vous vous connectez, ce qui ne pose pas vraiment de problème. Au pire, vous devrez peut-être effectuer une recherche et un remplacement dans votre SQL.
[1] : http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt [2] : http://msdn.microsoft.com/en-us/library/ms188074(SQL.90).aspx
<>
est le SQL valide selon la norme SQL-92.
[http://msdn.microsoft.com/en-us/library/aa276846(SQL.80).aspx][1]
[1] : http://msdn.microsoft.com/en-us/library/aa276846(SQL.80).aspx
Ils sont tous deux valides et identiques en ce qui concerne [SQL Server][1],
https://docs.microsoft.com/en-us/sql/t-sql/language-elements/not-equal-to-transact-sql-exclamation