#oracle中的!= 與<> 和^= 都是不等於,邏輯上沒有差別。官方推薦 <>,因為跨平台,可移植,相容性強。
不等於,隱含著不為空,即is not null。
name <> 'Mike',會把名字不是Mike並且不為空的資料查出來。
mysql中,<> 和 != 相同。
is not用來判空,即 is not null,不是空的。 select * from t where id is not null; 翻譯成中文就是,從t表中找出id不是空的資料。這也是為什麼當初專門為null發明is not這麼一種表達方式。因為「等於空」這種說法,確實不嚴謹。某個值,可以等於1,等於2,但不應該說等於空,因為它就是空的。
!= 、 <>、^= 三個符號都表示「不等於」的意思,在邏輯上沒有本質區別
但是要主義的是三個符號在表達「不等於」意義的同時,隱含一個「不為空is not null」的前提,所以使用時null會被過濾掉。
例如資料庫三個資料
姓名 | |
---|---|
張三 | 男 |
李四 | |
#王五 | 女 |
但是官方更推薦「<>」的寫法,因為跨平台可移植性更強。
以上是oracle/mysql中的「不等於「 <> != ^= is not一樣嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!