算数运算符
| 运算符 | 作用 |
|---|---|
| + | 加法 |
| - | 减法 |
| * | 乘法 |
| /, DIV | 除法,返回商 |
| %, MOD | 除法,返回余数 |
- 在除法和取模运算中,如果除数为0,返回结果为null。
MOD(a,b)与a%b效果一样。比较运算符
MySQL允许用户在使用select语句时对左右操作数进行比较,结果为真范围1,假返回0,不确定返回null。
| 运算符 | 作用 |
|---|---|
| = | 等于 |
| <>或!= | 不等 |
| <=> | null安全的等于(null-safe) |
| < | 小于 |
| <= | 小于等于 |
| > | 大于 |
| />= | 大于等于 |
| between | 存在于指定的范围 |
| in | 存在于指定的集合 |
| is null | 为null |
| is not null | 不为null |
| like | 通配符匹配 |
| regexp或rlike | 正则表达式匹配 |
null不能用于等和不等比较
select 1=2, 1=1, null=null, 1<>1, null<>null;+-----+-----+-----------+------+------------+| 1=2 | 1=1 | null=null | 1<>1 | null<>null |+-----+-----+-----------+------+------------+| 0 | 1 | NULL | 0 | NULL |+-----+-----+-----------+------+------------+
<=>与=类似,但可以用于null比较
select null <=> null; +---------------+ | null <=> null | +---------------+ | 1 | +---------------+between: 用法为a between min and max。当a大于等于min,小于等于max时为真。in的用法为a in (value1,value2,value3)。like运算符使用格式为a like %123%。逻辑运算符
| 运算符 | 作用 |
|---|---|
| NOT或! | 逻辑非 |
| AND或&& | 逻辑与 |
| OR或|| | 逻辑或 |
| XOR | 逻辑异或 |
not null的返回值为null。and中有任何一个操作数为null,结果都为null。OR,如果一个操作数为null,另一个为非0值,则结果为1,否则结果为null。若两个数都为null,结果为null。XOR,任意一个操作数为null,结果为null。位运算符
| 运算符 | 作用 |
|---|---|
| & | 位与 |
| | | 位或 |
| ^ | 位异或 |
| ~ | 位取反 |
| />> | 位右移 |
| /<< | 位左移 |
运算符的优先级
| 优先级顺序 | 运算符 |
|---|---|
| 1 | := |
| 2 | || OR XOR |
| 3 | && AND |
| 4 | NOT |
| 5 | BETWEEN CASE WHEN THEN ELSE |
| 6 | = <=> >= <= < <> != IS LIKE REGEXP IN |
| 7 | | |
| 8 | & |
| 9 | << >> |
| 10 | - + |
| 11 | * / DIV % MOD |
| 12 | ^ |
| 13 | - ~ |
| 14 | ! |
