PostgreSQL中的运算符是什么?
运算符是保留字或主要用于PostgreSQL语句的WHERE子句中的字符,用于执行操作,例如比较和算术操作.
操作符用于指定PostgreSQL语句中的条件,并用作语句中多个条件的连词.
算术运算符
比较运算符
逻辑运算符
按位运算符
PostgreSQL算术运算符
假设变量 a 保持2且变量 b 保留3,然后:
运算符 | 描述 | 示例e |
---|---|---|
+ | 加法 - 在运算符的任一侧添加值 | a + b将给出5 |
- | 减法 - 从左手操作数中减去右手操作数 | a - b将给-1 |
* | 乘法 - 乘以运算符两侧的值 | a * b将给出6 |
/ | Division - Divides左手操作数由右手操作数 | b/a将给1 |
% | 模数 - 用左手操作数除左手操作数并返回余数 | b%a将给出1 |
^ | Exponentiation - 这给出了右手操作数的指数值 | a ^ b将给出8 |
|/ | square root | |/25.0将给出5 |
||/ | Cube root | ||/27.0将给出3 |
! | factorial | 5!将给出120 |
!! | factorial(prefix operator) | !! 5将给出120 |
PostgreSQL比较运算符
假设变量a保持10,变量b保持20,然后:
运算符 | 描述 | 示例 |
---|---|---|
= | 检查两个操作数的值是否相等,如果是,则条件变为真. | (a = b)不成立. |
!= | 检查两个操作数的值是否相等,如果值不相等则条件变为真. | (a!= b)为真. |
<> | 检查两个操作数的值是否相等,如果值是不等于条件变为真. | (a<> b)是真的. |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件变为真. | (a> b)不为真. |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件变为真. | (a< b)为真. |
> = | 检查左操作数的值是否大于或者等于右操作数的值,如果是,则条件变为真. | (a> = b)不是真的. |
< = | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件变为真. | (a< = b)为真. |
PostgreSQL逻辑运算符
以下列出了PostgresSQL中可用的所有逻辑运算符.
S.不. | 运算符&描述 |
---|---|
1 | AND AND运算符允许在PostgresSQL语句的WHERE子句中存在多个条件. |
2 | NOT NOT运算符反转使用它的逻辑运算符的含义.例如. NOT EXISTS,NOT BETWEEN,NOT IN等.这是否定运算符. |
3 | OR OR运算符用于组合PostgresSQL语句的WHERE子句中的多个条件. |
PostgreSQL位串运算符
按位运算符处理位并执行逐位运算. &真值表和|如下 :
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支持的Bitwise运算符列在下表 :
运算符 | 描述 | 示例 |
---|---|---|
& | 如果两个操作数都存在,二进制AND运算符会将结果复制到结果中. | (A& B)将给出12,即0000 1100 |
| | 二进制OR运算符如果在任一操作数中都存在,则复制一点. | (A | B)将给出61这是0011 1101 |
〜 | 二元一元补语运算符是一元的,具有'翻转'位的效果. | (~A)将给出-61,即1100 0011 in由于带符号的二进制数,2的补码形式. |
<<< | 二进制左移位运算符.左操作数值向左移动右操作数指定的位数. | A<< 2将给出240这是1111 0000 |
>> | 二进制右移运算符.左操作数值向右移动右操作数指定的位数. | A>> 2将给出15,即0000 1111 |
# | 按位异或. | A#B将给出49,即0100 1001 |