PostgreSQL - 运算符

什么是 PostgreSQL 中的运算符?

运算符是保留字或主要用于 PostgreSQL 语句的 WHERE 子句中的字符,以执行操作,例如比较和算术运算。

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

  • 算术运算符

  • 比较运算符

  • 逻辑运算符

  • 按位运算符

PostgreSQL 算术运算符

假设变量a 为2,变量b 为3,然后

例子

运算符描述
+加法 - 在运算符的任一侧添加值a = b 将给予 5
-减法 - 从左手操作中减去右手操作a - b 将给予 - 1
*乘法 - 将运算符两边的值相乘a * b 将给 6
/

除法 - 将左边操作数除以右边操

b / a 意愿给 1
%

余数 - 将左边操作数除以右边操

作数并返回余

b % a 意愿给 1
^

指数 - 这给出了右边操作数的指

数值

a = b 将给予 8
|/平方根|/25.0 将给出 5
||/立方根||/ 27.0 将给予 3
!阶乘5 !将给 120
!!阶乘(前缀运算符)!!5 将给 120

PostgreSQL 比较运算符

假设变量 a 为 10,变量 b 为 20,然后

示例

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

PostgreSQL 逻辑运算符

这是 PostgresSQL 中可用的所有逻辑运算符的列表。

示例

编号运算符和描述
1

AND

AND 运算符允许在 PostgresSQL 语句的WHERE 子句中存在多个条件。

2

NOT

NOT 运算符颠倒了与它一起使用的逻辑运算符的含义。例如。NOT EXISTS、NOT BETWEEN、NOT IN 等。这是否定运算符。

3

OR

OR 运算符用于在 PostgresSQL 语句的 WHERE子句中组合多个条件。

PostgreSQL 位串运算符

按位运算符作用于位并执行逐位运算。& 和 | 的真值表 如下

pqp = qP | q
0000
0101
1111
1001

假设如果 A = 60; B = 13;现在以二进制格式,它们将如下

A = 0011 1100

B = 0000 1101

-----------------

A&B = 0000 1100

A|B = 0011 1101

~A = 1100 0011

示例

PostgreSQL 支持的按位运算符列于下表中

运算符描述
&

如果两个操作数中都存在二进制AND 运算符,则将其复制到结果中。

(A & B) 将给出 12,即 0000

1100

|

如果任一操作数中存在二进制OR 运算符,则复制一点。

(A | B) 将给出 61,即 0011

1101

~

Binary Ones ComplementOperator 是一元的,具有“翻转”位的效果。

(~A ) 将给出 -61,它是 11000011 由于带符号的二进制数,以 2 的补码形式表示。

<<

二元左移运算符。左操作数值向左移动右操作数指定的位数。

A << 2 将给出 240, 即 1111 0000
>>

二元右移运算符。左操作数的值向右移动右操作数指定的位数。

A>> 2 将给出 15, 这是 0000 1111
#按位异或A # B 将给出 49, 这是00110001