为什么mysql中不支持xor关键字?

loading...


0

如果我在我的sql中使用xor关键字它显示 keyword notfound. 而不是xor我正在使用 AND and OR

为什么它不能直接支持?

3回答

  • 0

    使用MySQL 5.5,正式支持XOR .

    Reference 1 Reference 2


  • 3

    XOR 不是SQL标准的一部分 . 现在不是,也不是 . 原因可能是因为"business"用户的逻辑并不明显 .

    你可以很容易地表达它:

    where (x or y) and not (x and y)
    

  • 2

    虽然 XOR 不是标准SQL语法的一部分,但它的定义如下:

    a XOR b = (a AND NOT b) OR (NOT a AND b)
    

    你可以在sql语句中的任何地方使用它,例如:

    SELECT * FROM tablename WHERE (a AND NOT b) OR (NOT a AND b)
    
评论

loading...

暂时没有评论!