SQLite 运算符

2024 年 8 月 29 日 | 5 分钟阅读

SQLite 运算符是用于 SQLite 语句中的保留字或字符,当我们使用 WHERE 子句执行比较和算术运算时。

运算符可用于指定条件,并作为 SQLite 语句中多个条件的连接词。

SQLite 中主要有 4 种类型的运算符

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符

SQLite 算术运算符

下表指定了 SQLite 中的不同算术运算符。 在此表中,我们有两个变量“a”和“b”,分别持有值 50 和 100。

运算符描述示例
+加法运算符:用于将运算符两边的值相加。a+b = 150
-减法运算符:用于从左手边的操作数中减去右手边的操作数。a-b = -50
*乘法运算符:用于将两边的值相乘。a*b = 5000
/除法运算符:用于将左手边的操作数除以右手边的操作数。a/b = 0.5
%模数运算符:用于将左手边的操作数除以右手边的操作数并返回余数。b/a = 0

SQLite 比较运算符

下表指定了 SQLite 中的不同比较运算符。 在此表中,我们有两个变量“a”和“b”,分别持有值 50 和 100。

运算符描述示例
==用于检查两个操作数的值是否相等,如果相等,则条件为真。(a == b) 为假。
=用于检查两个操作数的值是否相等,如果相等,则条件为真。(a = b) 为假。
!=用于检查两个操作数的值是否相等,如果值不相等,则条件为真。(a != b) 为真。
<>用于检查两个操作数的值是否相等,如果值不相等,则条件为真。(a <> b) 为真。
>用于检查左操作数的值是否大于右操作数的值,如果是,则条件为真。(a > b) 为假。
<用于检查左操作数的值是否小于右操作数的值,如果是,则条件为真。(a < b) 为真。
>=用于检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为真。(a >= b) 为假。
<=用于检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为真。(a <= b) 为真。
!<用于检查左操作数的值是否不小于右操作数的值,如果是,则条件为真。(a !< b) 为假。
!>用于检查左操作数的值是否不大于右操作数的值,如果是,则条件为真。(a !> b) 为真。

SQLite 逻辑运算符

以下是 SQLite 中的逻辑运算符列表

运算符描述
并且AND 运算符允许在 SQL 语句的 WHERE 子句中存在多个条件。
BETWEENBETWEEN 运算符用于搜索给定最小值和最大值的一组值中的值。
EXISTSEXISTS 运算符用于搜索满足特定条件的指定表中是否存在行。
ININ 运算符用于将值与已指定的一系列字面值进行比较。
不在其中它是 IN 运算符的否定,用于将值与已指定的一系列字面值进行比较。
喜欢LIKE 运算符用于使用通配符运算符将值与相似值进行比较。
GLOBGLOB 运算符用于使用通配符运算符将值与相似值进行比较。 此外,glob 区分大小写,这与 like 不同。
NOTNOT 运算符反转它所使用的逻辑运算符的含义。 例如:EXISTS、NOT BETWEEN、NOT IN 等。 这些被称为否定运算符。
OR 运算符用于组合 SQL 语句的 where 子句中的多个条件。
IS NULLNULL 运算符用于将值与空值进行比较。
ISIS 运算符与 = 相同
IS NOTIS NOT 运算符与 != 相同
||此运算符用于添加两个不同的字符串并创建一个新的字符串。
UNIQUEUNIQUE 运算符搜索指定表中的每一行以查找唯一性(没有重复项)。

SQLite 位运算符

SQLite 位运算符对位进行运算并执行逐位运算。

查看二进制 AND (&) 和二进制 OR (|) 的真值表

pqp&qp|q
0000
0101
1111
1001

假设两个变量“a”和“b”,分别具有值 60 和 13。 因此,a 和 b 的二进制值是

a= 0011 1100

b= 0000 1101

a&b = 0000 1100

a|b = 0011 1101

~a = 1100 0011


运算符描述示例
&如果存在于两个操作数中,则二进制 AND 运算符将一个位复制到结果中。(a & b) 将得到 12,即 0000 1100
|如果存在于任一操作数中,则二进制 OR 运算符将复制一个位。(a | b) 将得到 61,即 0011 1101
~二进制补码运算符是一元的,其作用是“翻转”位。(~a ) 将得到 -61,它以 2 的补码形式表示,因为是一个带符号的二进制数。
<<二进制左移运算符。 左操作数的值向左移动右操作数指定的位数。a << 2 将得到 240,即 1111 0000
>>二进制右移运算符。 左操作数的值向右移动右操作数指定的位数。a >> 2 将得到 15,即 0000 1111

下一主题SQLite 表达式