Appearance
操作符
负号
-a
– 二元表达式
乘号、除号和取余
a * b
– 乘法
a / b
– 除法
加号和减号
a + b
– 加法
a - b
– 减法
比较运算符
a = b
– 比较 a 是否 等于 b
a != b
, a <> b
– 比较 a 是否 不等于 b
a <= b
– 比较 a 是否 小于等于 b
a >= b
– 比较 a 是否 大于等于 b
a < b
– 比较 a 是否 小于 b
a > b
– 比较 a 是否 大于 b
a LIKE b
– 比较 a 是否 匹配 b, 忽略大小写
a REGEXP b
– 比较 a 是否 匹配 b , 忽略大小写
a NOT LIKE b
– 比较 a 是否 不匹配 b, 忽略大小写
a NOT REGEXP b
– 比较 a 是否 不匹配 b, 忽略大小写
a BETWEEN b AND c
– 等价于 a >= b AND a <= c
a IN ...
– 比较 a 是否 在集合中
a NOT IN ...
– 比较 a 是否 不在集合中
逻辑与
a AND b
– 比较 a 和 b 是否 都为真
逻辑或
a OR b
– 比较 a 和 b 是否 有一个为真
CASE 条件表达式
sql
CASE [x]
WHEN a THEN b
[WHEN ... THEN ...]
[ELSE c]
END
判断是否为 NULL
支持 IS NULL
和 IS NOT NULL
。
IS NULL
- 对于 可为空 类型的值,
IS NULL
会返回:1
值为NULL
0
否则
- 对于其他类型的值,
IS NULL
总会返回0
sql
SELECT x+100 FROM t_null WHERE y IS NULL
response
┌─x+100─┐
│ 101 │
└───────┘
IS NOT NULL
- 对于 可为空 类型的值,
IS NOT NULL
会返回:0
值为NULL
1
否则
- 对于其他类型的值,
IS NOT NULL
总会返回1
sql
SELECT * FROM t_null WHERE y IS NOT NULL
response
┌─x─┬─y─┐
│ 2 │ 3 │
└───┴───┘
IN 操作符
运算符的左侧是单列或元组。
例:
sql
SELECT UserID IN (123, 456) FROM ...
SELECT (CounterID, UserID) IN ((34, 123), (101500, 456)) FROM ...