SQLite 运算符
运算符是保留字或字符,主要用于SQLite语句的WHERE子句中,以执行操作,例如比较和算术运算。
运算符用于指定SQLite语句中的条件,并用作语句中多个条件的联合。
算术运算符
比较运算符
逻辑运算符
按位运算符
SQLite算术运算符
假设变量a等于10,变量b等于20,则将使用SQLite算术运算符,如下所示:
运算符 | 描述 | 例子 |
---|---|---|
+(加法) | 在运算符的任一侧添加值 | a + b等于30 |
-(减法) | 从左操作数中减去右操作数 | a-b等于-10 |
*(乘法) | 将运算符两边的值相乘 | a * b等于200 |
/ (分配) | 将左操作数除以右操作数 | b / a等于2 |
%(模量) | 将左操作数除以右操作数,然后返回余数 | b%a等于0 |
SQLite比较运算符
假设变量a等于10,变量b等于20,则将使用SQLite比较运算符,如下所示:
运算符 | 描述 | 例子 |
---|---|---|
== | 检查两个操作数的值是否相等,如果是,则条件为真。 | (a == b)为假 |
= | 检查两个操作数的值是否相等,如果是,则条件为真。 | (a = b)为假 |
!= | 检查两个操作数的值是否相等,如果值不相等,则条件为真。 | (a!= b)为真 |
<> | 检查两个操作数的值是否相等,如果值不相等,则条件为真。 | (a <> b)为真 |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件为true。 | (a> b)为假 |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件为true。 | (a <b)为真 |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件变为true。 | (a> = b)为假 |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为true。 | (a <= b)为真 |
!< | 检查左操作数的值是否不小于右操作数的值,如果是,则条件为真。 | (a!<b)为假 |
!> | 检查左操作数的值是否不大于右操作数的值,如果是,则条件为true。 | (a!> b)为真 |
SQLite逻辑运算符
这是SQLite中可用的所有逻辑运算符的列表。
序号. | 运算符和说明 |
---|---|
1 | AND AND运算符允许SQL语句的WHERE子句中存在多个条件。 |
2 | BETWEEN 给定最小值和最大值,BETWEEN运算符用于搜索一组值内的值。 |
3 | EXISTS EXISTS运算符用于在指定表中搜索符合某些条件的行。 |
4 | IN IN运算符用于将值与指定的文字值列表进行比较。 |
5 | NOT IN IN运算符的取反,用于将一个值与已指定的文字值列表进行比较。 |
6 | LIKE LIKE运算符用于使用通配符将值与相似值进行比较。 |
7 | GLOB GLOB运算符用于使用通配符运算符将值与相似值进行比较。此外,与LIKE不同,GLOB区分大小写。 |
8 | NOT NOT运算符颠倒了与其一起使用的逻辑运算符的含义。例如。不存在,不存在,不存在等这是求反运算符。 |
9 | OR OR运算符用于在SQL语句的WHERE子句中组合多个条件。 |
10 | IS NULL NULL运算符用于将值与NULL值进行比较。 |
11 | IS IS运算符的工作方式类似于= |
12 | IS NOT IS运算符的工作方式类似于!= |
13 | || 添加两个不同的字符串并制作一个新字符串。 |
14 | UNIQUE UNIQUE运算符在指定表的每一行中搜索唯一性(没有重复项)。 |
SQLite按位运算符
按位运算符对位进行运算并执行逐位操作。以下是真值表&和|.
p | q | p&q | p | q |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 |
1 | 1 | 1 | 1 |
1 | 0 | 0 | 1 |
假设是否A=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,则:
运算符 | 描述 | 例子 |
---|---|---|
& | 如果两个操作数中都存在二进制AND运算符,则会将一位复制到结果中。 | (A&B)等于12,即0000 1100 |
| | 二进制或运算符将复制一个位(如果这两个操作数中都存在)。 | (A | B)等于61,即0011 1101 |
~ | 二进制补码运算符是一元的,具有“翻转”位的作用。 | (〜A)等于2的补码形式的-61,即1100 0011,这是由于带符号的二进制数 |
<< | 二进制左移运算符。左操作数的值向左移动右操作数指定的位数。 | << 2等于240,即1111 0000 |
>> | 二进制右移运算符。左操作数的值向右移动右操作数指定的位数。 | A >> 2等于15,即0000 1111 |