Lequel des deux moyens (sémantiquement équivalents) est préférable pour tester l'inégalité?
'foo' != 'bar'
(point d'exclamation et signe égal)'foo' <> 'bar'
(moins que et plus que les symboles chevrons ensemble)La documentation MySQL indique clairement qu'il n'y a pas de différence entre eux et pourtant certaines personnes semblent attachées à ne le faire que d'une manière ou d'une autre. C'est peut-être juste un autre débat inutile contre vi vs emacs, mais lorsque d'autres personnes lisent votre code (et donc vos requêtes), il est utile de maintenir une certaine cohérence.
<>
ressemble beaucoup à <=>
qui est un opérateur très sous-utilisé mais pourrait peut-être conduire à la confusion d'un coup d'œil car les deux sont presque opposés (à l'exception des cas évidents NULL
).
<> devrait être préféré, toutes choses étant égales par ailleurs, car il est conforme à la norme sql et est techniquement plus portable ...
! = n'est pas standard, mais la plupart des db l'implémentent.
sql: 2008 grammaire:
<not equals operator> ::=
<>
C'est évident.
Le ! le personnage se trouve dans le coin nord-ouest des claviers américains.
Le siège social de Microsoft est situé dans le nord-ouest des États-Unis.
Alors. <>
est un clin d'œil à Microsoft.
!=
est un rejet de Microsoft.
C'est un code politique secret.
<> est le seul dans la norme SQL-92.
Les administrateurs de base de données aiment généralement <> et les programmeurs comme! =. Juste une observation :-)
Ce sont les mêmes, c'est purement la préférence .
Cela devrait vous donner une bonne idée
! = (Pas égal à) Pas égal à (pas standard SQL-92)
<> (Pas égal à) Pas égal à
L'opérateur <>
Est celui qui est dans la norme SQL, donc la plupart des gens qui connaissent SQL y seront habitués, ou du moins en seront conscients. Je ne savais même pas que l'opérateur !=
Était également disponible dans certains dialectes SQL jusqu'à récemment.
Comme vous l'avez remarqué, les gens ont tendance à n'utiliser que l'un ou l'autre, et c'est une bonne approche, au moins projet par projet. Peu importe ce que vous choisissez d'utiliser, soyez cohérent.