算数运算符:+、-、*、/、%
- 在SQL中,+只做运算,不做连接操作,比如:
5 + '1' = 6
- 在SQL中,
5 + 'a' = 5
,'a'隐式转换成了0 - 在SQL中,两个整数相除,结果为浮点型数
- 在SQL中,
10 / 0 = NULL
、10 % 0 = NULL
比较运算符:=、<=>、<>、!=、>、<、>=、<=
-
=
:等于
① 结果为真返回1,为假返回0,其他情况返回NULL
② 与数值做运算时,字符串存在隐式转换,如果转换数值不成功,则看做0
③ 两边都是字符串,则按ASCII比较
④ 只要有NULL
参与判断,结果一定是NULL
-
<=>
:安全等于
与=
的区别在于,可以对NULL
进行判断sql// 结果是0、1 SELECT 1 <=> NULL, NULL <=> NULL FROM DUAL;
-
<>
和!=
:不等于
关键字运算符
IS NULL
:判断是否为NULL
ISNULL()
,判断是否为NULL
IS NOT NULL
:判断是否不为NULL
LEAST()
:两者中的最小GREATEST()
:两者中的最大BETWEEN ... AND
:两者中间,闭区间IN(set)
:是否在set中NOT IN(set)
:是否不在set中LIKE
:模糊查询
①%
代表0个或多个不确定的字符
②_
代表一个不确定的字符REGEXP
:正则表达式RLIKE
:正则表达式
逻辑运算符
AND
、&&
:与OR
、||
:或NOT
、!
:非XOR
:异或
位运算符
&
:按位与|
:按位或^
:按位异或~
:按位取反>>
:按位右移<<
:按位左移