SQLite运算符
SQLite的运算符是什么?
运算符是一个保留字或一个字符主要用于SQLite语句的WHERE子句来执行操作,如比较和算术运算。 操作符用于指定条件的SQLite语句和作为连词在一份声明中为多个条件。
- 算术运算符
- 比较运算符
- 逻辑运算符
- 位运算符
算术运算符
假设一个变量a=10和b=20,那么
算法运算符 |
描述 |
例子 |
+ |
加法 - 两侧的值相加 |
a + b = 30 |
- |
减法 – 左边减去右边的值 |
a - b = -10 |
* |
乘法 – 两边数相乘 |
a * b = 200 |
/ |
除法 – 左边除以右边的值 |
b / a= 2 |
% |
取余 - 左边除以右边的的值的余数 |
b % a= 0 |
比较运算符
假设a=10 和b=20,那么:
比较运算符 |
描述 |
例子 |
== |
检查两个操作数的值是否相等,如果是的,那么条件变得真实。 |
(a == b) is not true. |
= |
检查两个操作数的值是否相等,如果是的,那么条件变得真实。 |
(a = b) is not true. |
!= |
检查两个操作数的值是否相等,如果值不相等,那么条件变得真实。 |
(a != b) is true. |
<> |
检查两个操作数的值是否相等,如果值不相等,那么条件变得真实。 |
(a <> b) is true. |
> |
检查左操作数的值是否大于右操作数的值,如果是的,那么条件变得真实。 |
(a > b) is not true. |
< |
检查左操作数的值小于右操作数的值,如果是的,那么条件变得真实。 |
(a < b) is true. |
>= |
检查左操作数的值是否大于或等于右操作数的值,如果是的,那么条件变得真实。 |
(a >= b) is not true. |
<= |
检查左操作数的值是否小于或等于右操作数的值,如果是的,那么条件变得真实。 |
(a <= b) is true. |
!< |
检查左操作数的值不小于右操作数的值,如果是的,那么条件变得真实。 |
(a !< b) is false. |
!> |
检查左操作数的值不能大于右操作数的值,如果是的,那么条件变得真实。 |
(a !> b) is true |
逻辑运算符
这里是一个列表的所有逻辑运算符在SQLite。
逻辑运算符 |
描述 |
AND |
允许存在多个条件在SQL语句的WHERE子句。 |
BETWEEN |
用于搜索值在一组值,考虑到最小值和最大值。 |
EXISTS |
用于搜索的存在符合规定的指定表中的一行。 |
IN |
是用来比较值指定的文字值的列表。 |
NOT IN |
是用来比较值指定的文字值的列表。 |
LIKE |
用来比较值使用通配符找相似的值。 |
GLOB |
是用来比较值使用通配符找相似的价值观。同时,一滴是大小写敏感的,不像Like。 |
NOT |
NOT操作符颠倒的逻辑操作符的含义。如NOT EXISTS, NOT BETWEEN, NOT IN, etc. This is negate operator. |
OR |
用于组合多个条件在SQL语句的WHERE子句。 |
IS NULL |
用来比较值NULL值。 |
IS |
相当于= |
IS NOT |
相当于=!= |
|| |
增加了两个不同的字符串,成为另一个 |
UNIQUE |
搜索指定表的每一行的独特性(无重复)。 |
位运算符
按位运算符作用于比特和执行按位操作。事实表&,|如下
p |
q |
p & q |
p | q |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
假设如果一个= 60;和B = 13;现在在二进制格式,他们将如下:
A = 0011 1100
B = 0000 1101
-----------------
A&B = 0000 1100
A|B = 0011 1101
~A = 1100 0011
按位运算符支持SQLite语言下面的表中列出。假设变量A=60和变量B=13,然后:
Operator |
Description |
Example |
& |
与上同 |
(A & B) will give 12 which is 0000 1100 |
| |
与上同 |
(A | B) will give 61 which is 0011 1101 |
~ |
与上同 |
(~A ) will give -61 which is 1100 0011 in 2's complement form due to a signed binary number. |
<< |
二进制左移操作符。左操作数的值移动留下的右操作数指定的位的数量。 |
A << 2 will give 240 which is 1111 0000 |
>> |
二进制移位算子。左操作数的值移动正确的位操作数指定的权利。 |
A >> 2 will give 15 which is 0000 1111 |