1 mysql 操作符
下图表示所有操作符的执行优先级,从高到低,同一行中的操作符优先级相同,相同优先级的情况则从左到右执行
如果想改变优先级执行顺序则可以使用括号()
1.1 对比操作符
对比操作符的执行结果为true,false,null 三种
Between A and B 代表检查值是否在A和B之间Coalesce()代表返回第一个非Null的值,如果没有非null值,则返回NULL=代表相等操作符>代表大于操作符>=代表大于等于操作符Greatest()代表返回最大的值In()代表检查值是否在一系列的值之中Interval()代表返回比第一个参数小的参数的位置is/is not代表检查值是否与布尔值相同/不同Is not null代表检查值是否是非NULLIs null代表检查值是否是NULL Isnull()代表检查参数是NULLLeast()代表返回最小的参数 如果其中有值为null,则返回null <代表小于操作符> <=代表小于等于操作符Like代表字符匹配Not between A and B代表检查值是否不在A和B的范围之内!=/<>代表不等于操作符Not in()代表检查值是否不在一系列值的当中Not like代表检查值是否不匹配Strcmp()对比两个字符串 代表小于操作符>
我只对某些列子做了举例,很多都是类似一样的用法没有再写
=(等号)对比操作符
1表示true ,0表示false
<>/!= 不等于对比操作符
is 操作符
Expr between min and max对比操作符相当于min <= expr AND expr <= max
COALESCE(value,…)对比操作符 返回第一个非NULL的值,如果没有非null值,则返回NULL
GREATEST(value1,value2,…) 返回其中最大的值
expr IN (value,…)对比操作符 当expr值能在values中找到,则返回1,否则返回0
Isnull(expr)操作符 如果expr是null,则返回1,否则返回0
LEAST(value1,value2,…) 返回最小值,如果其中有值为null,则返回null
1.2 逻辑操作符
AND,&& 逻辑与NOT,! 否||,OR 逻辑或XOR 异或 真真为假 假假为假 真假为真 假真为真
NOT, !逻辑操作符代表非操作
AND,&& 逻辑与操作符
XOR逻辑异或操作符
1.3 分配操作符
= =操作符在两种情况下会被认为是赋值操作,其他情况下会认为是对比操作符 a.在set语句中,=操作符会被认为是赋值操作 b.在update语句中的set子句中,=操作符会被认为是赋值操作:= 分配一个值