0


走近mysql运算符|靠它就够啦

这里写目录标题

比较运算符的使用

等号运算符

= 判断等号两边的值,字符串或表达式是否相等,如果相等则返回1,不相等则返回0.
需要遵守如下规则:
1.如果等号两边都为字符串,则Mysql会按照字符串进行比较,其比较的是每个字符的ANSI编码是否相等。
2.如果等号两边都是整数。则会按照两个整数的值来比较大小。
3.如果等号两边一个是整数,一个是字符串,则Mysql会将·字符串转换成数字进行比较。
4.如果等号两边有一个为NULL,则比较结果为NULL

SELECT1=2,1!=2,1='a',0='a'FROM DUAL;

结果为: 0,1,0,1
字符串存在隐式转换,如果数值转化不成功,则看作0

SELECT'a'='a','as'='as','d'='a'FROM DUAL;

结果为:1,1,0

SELECT'1'=NULL,NULL=NULLFROM DUAL;

结果为:NULL,NULL

<=>安全等于

和=一样,除了当为NULL时,唯一区别可以对NULL进行判断
在两个操作数均为NULL时,其返回值为1,而不为NULL
当一个操作数为NULL时,其返回值为0,而不为NULL

SELECT'1'=NULL,NULL=NULLFROM DUAL;

结果为:0,1

不等于运算符<>/!=

用于判断两边的字符串,数字,表达式的值是否不相等。如果不相等则返回一,相等则返回0.
不等运算符不能判断NULL值,当任意一边出现NULL或者都是NULL时,返回值都是NULL

非符号类型的运算符

IS NULL 为空运算符判断值,字符串,表达式是否为空IS NOT NULL 不为空运算符判断值,字符串,表达式是否不为空LEAST 最小值运算符在多个值中返回最小值GREATEST最大值运算符在多个值中返回最大值BETWEEN AND 两值之间的运算符判断一个值是否在两个值之间ISNULL 为空运算符判断一个值,字符串,表达式是否为空IN 属于运算符判断一个值是否为列表中的任意一个值NOT IN不属于运算符判断一个值是否不是一个列表中任意一个值LIKE 模糊匹配运算符判断一个值是否符合模糊匹配规则PEGEXP 正则表达式运算符判断一个值是否符合正则表达式的规则RLIKE 正则表达式判断一个值是否符合正则表达式的规则
比如

BETWEEN AND

在使用时,要注意上下限问题(包含边界值)

SELECT age
FROM empolyees
WHERE  age BETWEEN10AND20;#或者 WHERE  age NOT BETWEEN 10 AND 20;#WHERE  age BETWEEN 100 AND 20; 错误写法

IN

查询年龄为10或20的员工信息

SELECT age
FROM empolyees
#方法一:WHERE  age=10 OR age=20;#方法二:WHERE  age IN(10,20);WHERE  age NOTIN(10,20);#查询年龄不是10,20的员工信息

LIKE

查询名字为‘a’的员工信息·

SELECT name
FROM empolyees
WHERE  name LIKE'a';

查询名字中包含字符;‘a’的员工信息
% 代表有不确定个数的字符
%a%代表前面后面都有不确定个数的字符

SELECT name
FROM empolyees
WHERE  name LIKE'%a%';

查询名字中包含字符‘a’和‘w’的员工信息

SELECT name
FROM empolyees
#方法一:WHERE  name LIKE'%a%'ANDLIKE'%w%';#方法二:WHERE  name LIKE'%a%e%'OR name LIKE'%e%a%';

_代表一个不确定的字符
查找第二个字符为a的员工信息

SELECT name
FROM empolyees
WHERE  name LIKE'_a%';

如果当_就是要查找的字符时,要用到转义字符 \

查找第二个字符为_,而且第三个字符为a 的员工信息

SELECT name
FROM empolyees
WHERE  name LIKE'_\_a%';

用¥来充当转义字符

SELECT name
FROM empolyees
WHERE  name LIKE'_¥_a%'ESCAPE ¥;

PEGEXP/ RLIKE

精准的来查询信息,其中有
请添加图片描述

逻辑运算符使用

运算符作用NOT或!逻辑非AND或&&逻辑与OR逻辑或XOR逻辑异或
注意:
OR与AND能一起使用,但是在使用时要注意两者之间的优先级关系。
AND的优先级高于OR,因此在运算时,先对AND进行运算,得到的结果再与OR进行运算

位运算符

位运算符是在二进制数上进行计算的运算符。位运算符会先将操作数变为二进制数,然后进行位运算,最后将计算结果从二进制变回十进制
运算符作用&按位与(位AND)直线(语法问题,无法输入)按位或(位OR)^按位异或(位XOR)~按位取返>>按位右移<<按位左移

标签: mysql 数据库 sql

本文转载自: https://blog.csdn.net/2202_75623950/article/details/131193588
版权归原作者 洁洁! 所有, 如有侵权,请联系我们删除。

“走近mysql运算符|靠它就够啦”的评论:

还没有评论