我是SQL新手。只是想知道下面SQL语句背后的逻辑:
SELECT (1 & 3)
如果我们在SQL语句中的两个数字之间给&
或|
会发生什么?实际的逻辑是什么?
我尝试过一些数字,但却无法理解它背后的逻辑。
答案 0 :(得分:2)
这是一个按位AND操作。 AND运算的结果包括两个参数中的1。在你的“1& 3”的例子中,二进制1为00000001,二进制为3为00000011.两个值中只有最后一位为1,因此结果为00000001。因此1& 3 = 1。
|是一个按位OR运算,它匹配EITHER值为1的位。因此1 | 3 = 3。
可以找到更详细的解释here。