MYSQL运算符

MYSQL运算符

算术运算符
这里写图片描述

1.除法运算和求余运算中,x2不能为0或者NULL,否则运算结果为空。在进行算术运算时,应注x2参数值的合法性。
eg:
这里写图片描述

比较运算符(看是否符合条件)
1.运算符‘=’
用来判断数字,字符串,表达式等是否相等,相等返回1,不相等返回0,不能用与对NULL值的判断。
当用来判断两个字符时,是根据字符的ascll码。
eg:
这里写图片描述
这里写图片描述
2.运算符‘!=’和‘<>’
用来判断数字,字符串,表达式等是否不相等,不相等返回1,相等返回0,也不能用与对NULL值的判断。
eg:这里写图片描述

3.运算符’<=>’
作用和‘=’ 一样,用来判断操作符是否相等,不过这个可以用来判断NULL值。’<=>’可以实现‘=’的所有功能,但一般不用<=>
eg:
这里写图片描述
4.运算符‘>’
当左操作符大于右操作符时,返回1,否则返回0.不能用与对NULL值的比较。
当判断一个字符串是否相等时,先判断第一个字符,如果第一个字符相等再判断下一个字符,直到比较出结果。
eg:
这里写图片描述
5.运算符‘>=’
当左操作符大于等于右操作符时,返回1,否则返回0.不能用与对NULL值的比较。
eg:
这里写图片描述
6.运算符‘<’
当左操作符小于右操作符时,返回1,否则返回0.不能用与对NULL值的比较。
eg:
这里写图片描述
7.运算符’<=’
当左操作符小于等于右操作符时,返回1,否则返回0.不能用与对NULL值的比较。
eg:这里写图片描述

8.运算符‘IS NULL’
若操作数为空值,返回1,否则返回0.
eg:
这里写图片描述
当使用 > ,<, !=,<>,=,>=,<=等操作符时不能用于对NULL值操作,因此要对空值操作,必须使用<=>或is not null,is null
NULL 和’NULL‘是不一样的,后者表示一个由字符组成的字符串。

9.运算符‘between and’
判断操作数是否在某个取值范围内,在范围内返回1否则返回0
eg:
这里写图片描述
10.运算符’In’
判断操作数是否在某个集合中。是返回1否则返回0
eg:
这里写图片描述
11.运算符 ‘like’
匹配字符串成功,则返回1,否则返回0
eg:
这里写图片描述
12.运算符 regexp
使用正则表达式匹配字符串,如果匹配成功返回1,否则返回0
eg:
这里写图片描述
beijing以‘b’开头,以‘g’结尾,返回1,由于beijing中不包含‘y’,所以返回0

逻辑运算符(判断真假)
表达式为真,返回1,表达式为假,返回0;
1.与运算
&& 或者 AND表示与运算。所有操作数不为0且不为NULL时,返回1,有一个为0则返回0.有一个为空则返回NULL.负数和大于0的数都等价为1.
形式: A && B && C && D
eg:
这里写图片描述
2.或运算
|| 或者 or 表示或运算。所有操作数只要有存在任何一个不为0或NULL时,返回1。
形式: A || B || C || D
eg:这里写图片描述
3.非运算符
! 或 not表示非运算符。通过该运算符返回与操作数相反的结果。如果操作数为0,返回值为1,如果操作数为1,返回值为 0.如果操作数为NULL,返回值为NULL.
非运算符的操作数只有一个,形式 !A.
eg:这里写图片描述
4.异或运算符
XOR表示异或运算符。当操作数中有一个为NULL,返回值为NULL,当操作数都为0或者都为1,返回值为0,当操作数有一个为0或为1时,返回值为1.
形式:A XOR B XOR C XOR D .当有多个操作数时,从左往右依次运算。
在进行异或运算时,所有大于-1小于1的数,都被认为是逻辑数字0,其他被认为是1.
逻辑相同返回0,逻辑不同返回1
eg:这里写图片描述

位运算符*(在二进制数上进行计算的运算符,先将操作数变成二进制,再进行位运算)*
位运算符的操作数必须是十进制,否则计算结果是错误的,十进制和二进制的转换是由数据库系统实现的。使用CONV()函数将操作数可转化为十进制。
1.按位与(&)
将其他进制的数换为二进制,1和1得1,0和0得0.1和0得0.运算完之后再转换为原来的进制。
eg:这里写图片描述
2.按位或(|)
将其他进制的数换为二进制,1和任何得1,0和0得0.运算完之后再转换为原来的进制。
eg:
这里写图片描述
3.按位取反(~)
将其他进制的数换为二进制,1变为0,0变为1.运算完之后再转换为原来的进制。
使用bin()函数可以查看二进制数。
eg:
这里写图片描述
这里写图片描述
4.按位异或(^)
将其他进制的数换为二进制,相同的数异或为0.不同的数异或为1.运算完之后再转换为原来的进制。
eg:
这里写图片描述

5.按位左移(<<)按位右移(>>)
将其他进制的数换为二进制,m << n 表示m左移n位,右边补0;
m >> n 表示m右移n位。左边补0.被移出的直接丢弃。运算完之后再转换为原来的进制。
这里写图片描述

运算符的优先级
这里写图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值