1. 算术运算符
| 算术运算符 | 描述 | 示例 | 
| + | 加法运算符 | SELECT A+B | 
| - | 减法运算符 | SELECT A-B | 
| * | 乘法运算符 | SELECT A*B | 
| / | 除法运算符 | SELECT A/B | 
| % | 取余运算符 | SELECT A%B | 
1.1 加法与减法操作符
SELECT 100,100+11,100-11,100+23.0,100-23.0运算结果

由此得出结论:
-  一个整数加上或者减去一个整数结果还是一个整数 
-  一个整数加上或者减去一个浮点数结果是一个浮点数 
-  在PostgreSQL中+只表示数值相加,如果遇到非数值类型,先尝试转化成数值,如果转失败,则直接报错。 
SELECT 100+'1';

如果想实现连接使用||操作符

1.2 乘法与除法运算符
SELECT 100,100*1,100*1.0,100/1.0,100.0/1,100+2*5/2,100/3;
由此可知:
一个数乘以1和除以1后仍得原数
一个数乘以浮点数和除以浮点数后变成浮点数
一个整数数除以浮点数或者一个浮点数除以一个整数,结果的小数位为16位。
两个整数相处结果为整数
select 1/0;在PostgreSQL中,0不能作为除数,会报错。

1.3 取模运算符
select 12%3,12.0%5,12%5.0,12%5,0.0%5,0%5.0||'';
由此可知:
两个整数取模结果为整数,
整数与浮点数取模结果为浮点数
0%整数结果为整数0,取模浮点数结果为浮点数。取模的优先级大于连接操作符的优先级
不能取模0,PostgreSQL会报错

2. 比较运算符
比较运算符用来对表达式左边的操作数和右边的操作数进行比较,比较结果为真则返回true,比较结果为假则返回false,其他情况返回NULL。
比较运算符经常被用来作为SELECT查询语句的条件来使用,返回符合条件的记录。
| 比较运算符 | 描述 | 示例 | 
| = | 等于 | manager_id = 100 | 
| != | 不等于 | department_id != 50 | 
| <> | 不等于 | job_id <> 'SA_REP’' | 
| > | 大于 | salary > 10000 | 
| >= | 大于等于 | hire_date >= '2007-01-01' | 
| < | 小于 | salary < 15000 | 
| <= | 小于等于 | employee_id <= 123 | 
2.1 等号运算符
等号运算符(=)判断等号两边的值、字符串或表达式是否相等,如果相等返回true,不等返回false
在使用等号运算时,遵循如下规则:
-  等号两边的值都是整数,按照数值大小比较 
-  等号两边的值一个是整数,另一个是字符串,则将字符串转化为整数,按照数值比较 
-  等号两边的值有一个是NULL,则结果为NULL 
SELECT 1 = 1, 1 = '1', 1 = 0, 'a' = 'a', (5 + 3) = (2 + 6), '' = NULL , NULL = NULL; 
2.2 不等于运算符
不等于运算符(<>和!=)用于判断两边的数字、字符串或者表达式的值是否不相等,如果不相等则返回true,相等则返回false。不等于运算符不能判断NULL值。如果两边的值有任意一个为NULL,或两边都为NULL,则结果为NULL。 SQL语句示例如下:
SELECT 1 <> 1, 1 != 2, 'a' != 'b', (3+4) <> (2+6), 'a' != NULL, NULL <> NULL;2.3 空运算符
空运算符(IS NULL)判断一个值是否为NULL,如果为NULL则返回true,否则返回 false。 SQL语句示例如下:
SELECT NULL IS NULL, 1 IS NULL;
2.4 非空运算符
非空运算符(IS NOT NULL)判断一个值是否不为NULL,如果不为NULL则返回true,否则返 回false。 SQL语句示例如下:
SELECT NULL IS NOT NULL, 'a' IS NOT NULL, 1 IS NOT NULL;