2
運行查詢...MySQL 5.x - 你能解釋這個奇怪嗎?
SELECT !(!0), ! !0, !!0 AS WTF;
在MySQL
產生以下輸出...
-------------------------
!(!0) | ! !0 | WTF
-------------------------
0 | 0 | 1 # <- What's going on here?
我似乎無法找到的文檔任何可以解釋這一點。你可以嗎?
作爲一種解決方法,您應該使用'NOT'而不是'!'。它在功能上是等價的,但它會避免該錯誤,因爲它會強制你在多個運算符之間放置空格,例如:SELECT NOT(NOT 0),NOT NOT 0,NOT NOT ASFUT;' – 2011-04-02 18:23:42
Thanks Mat! @Ike Walker並不完全相同,只有在SQL模式[HIGH_NOT_PRECEDENCE](http://dev.mysql.com/doc/refman/5.1/en/server- sql-mode.html#sqlmode_high_not_precedence)已啓用! – famagusta 2011-04-02 18:29:14
順便說一句,我做了「!!」 - >「不是」轉換,以找到谷歌中的錯誤報告:-) – Mat 2011-04-02 18:30:30