两种(在语义上等效)哪种方法更适合测试不平等现象?
'foo' != 'bar'
'foo' <> 'bar'
MySQL文档清楚地表明它们之间没有区别,但是有些人似乎只喜欢一种或另一种方式。也许这只是vi与emacs争论的另一场毫无意义的事情,但是当其他人正在阅读您的代码(以及您的查询)时,保持某些一致性很有用。
<>看起来很像<=>是一个未充分使用的运算符,但由于两者几乎相反(明显的NULL情况除外),因此乍看之下可能会引起混乱。
<>
<=>
NULL
在所有条件都相同的情况下,应该首选<>,因为它符合sql标准并且在技术上更具可移植性…
!=是非标准的,但是大多数数据库都实现了它。
sql:2008语法:
<not equals operator> ::= <>