PostgreSQL - 运算符

PostgreSQL 中的运算符是什么?

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

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

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

PostgreSQL 算术运算符

假设变量 a 为 2,变量 b 为 3,则 −

Example

运算符 描述 示例
+ 加法 - 在运算符的任一侧添加值 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 factorial 120

PostgreSQL 比较运算符

假设变量 a 为 10,变量 b 为 20,则 −

显示示例

运算符 描述 示例
= 检查两个操作数的值是否相等,如果是则条件为真。 (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.

PostgreSQL 逻辑运算符

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

显示示例

S. No. Operator & Description
1

AND

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

2

NOT

NOT 运算符反转使用它的逻辑运算符的含义。 例如。 NOT EXISTS、NOT BETWEEN、NOT IN 等。这是否定运算符

3

OR

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


PostgreSQL 位串运算符

位运算符对位起作用并执行逐位运算。 The truth table for & and | is as follows −

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

显示示例

PostgreSQL 支持的位运算符如下表所示 −

运算符 描述 示例
& 如果两个操作数中都存在二进制 AND 运算符,则将其复制到结果中。 (A & B) 将给出 12 即 0000 1100
| 如果二进制或运算符存在于任一操作数中,则复制一个位。 (A | B) 将给出 61 即 0011 1101
~ 二进制补码运算符是一元的,具有“翻转”位的效果。 (~A )由于有符号二进制数,将给出 -61,即 1100 0011 的 2 补码形式。
<< 二进制左移运算符。 左操作数的值向左移动右操作数指定的位数。 A << 2 将给出 240 即 1111 0000
>> 二进制右移运算符。 左操作数的值向右移动右操作数指定的位数。 A >> 2 将给出 15 即 0000 1111
# 按位异或。 A # B 将给出 49 即 00110001