《MySQL核心知识》第3章:MySQL中的运算符
今天是《MySQL核心知识》专栏的第3章,今天跟大家一起聊聊MySQL中的运算符。好了,开始今天的正题。
?安全等于运算符()
这个操作符和=操作符执行相同的比较操作,不过
大家好,我是冰河~~ 今天是《MySQL核心知识》专栏的第3章,今天跟大家一起聊聊MySQL中的运算符。好了,开始今天的正题。 ?安全等于运算符() 这个操作符和=操作符执行相同的比较操作,不过可以用来判断NULL值。 在两个操作数均为NULL时,其返回值为1而不为NULL; 而当一个操作数为NULL时,其返回值为0而不为NULL。 下面分别是 SELECT NULL 「1」SELECT「1」「0」SELECTNULL NULL 的执行结果 在两个操作数均为NULL时,其返回值为1而不为NULL; ?LEAST运算符 语法格式为:LEAST(值1,值2,...值n)mssql 运算符,其中值n表示参数列表中有n个值。在有两个或多个参数的情况下,返回最小值。 假如任意一个自变量为NULL,则LEAST()的返回值为NULL 使用LEAST运算符进行大小判断,SQL语句如下:
由结果可以看到,当参数中是整数或者浮点数时,LEAST将返回其中最小的值; 当参数为字符串时,返回字母中顺序最靠前的字符; 当比较值列表中有NULL时,不能判断大小,返回值为NULL ?GREATEST运算符 语法格式为:GREATEST(值1,值2,...值n),其中n表示参数列表中有n个值。 在有两个或多个参数的情况下,返回最大值。 假如任意一个自变量为NULL,则GREATEST()的返回值为NULL 使用GREATEST运算符进行大小判断,SQL语句如下:
由结果可以看到,当参数中是整数或者浮点数时,GREATEST将返回其中最大的值; 当参数为字符串时,返回字母中顺序最靠后的字符; 当比较值列表中有NULL时,不能判断大小,返回值为NULL ?REGEXP 运算符 在SQLSERVER里是没有正则函数或者运算符的,MYSQL在这方面的确比较完善 用来匹配字符串,语法格式为:expr REGEXP 匹配条件,如果expr满足匹配条件,返回1; 如果不满足,则返回0; 若expr或匹配条件任意一个为NULL,则结果为NULL 常用的几种通配符: (1)'^'匹配以该字符后面的字符开头的字符串 (2)'$'匹配以该字符后面的字符结尾的字符串 (3)'.'匹配任何一个单字符 (4)'[...]'匹配在方括号内的任何字符。例如,“[abc]" 匹配a、b或c。 字符的范围可以使用一个'-',“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字 (5)??'*' 匹配零个或多个在他前面的字符。例如,“x*”匹配任何数量的'*'字符,“[0-9]*”匹配任何数量的数字,而“.*”匹配任何数量的任何字符。?? 使用REGEXP 运算符进行字符串匹配运算,SQL语句如下:
由结果可以看到,指定匹配字符串为ssky。 注意:正则表达式是一个可以进行复杂查询的强大工具,相对于LIKE字符串匹配,它可以使用更多的通配符类型,查询结果更加灵活 ?逻辑运算符 当任意一个操作数为NULL时,返回值为NULL;对于非NULL的操作数,如果两个操作数都是非0值或者都是0值,则返回结果为0; 如果一个为0值,另一个为非0值,返回结果为1。使用异或运算符XOR进行逻辑判断,SQL语句如下
由结果可以看到‘1 XOR 1’和‘0 XOR 0’中运算符两边的操作数都为非零值,或者都是零值,因此返回0; 注意: a XOR b的计算等同于(a AND (NOT b))或者(NOT a AND ( b)) ?位运算符 由于比较少用到,这里只做简单介绍 位运算符是用来对二进制字节中的位进行测试、移位或者测试处理 MYSQL中提供的位运算有 TIPS:可以使用BIN()=binary函数查看一个十进制数的二进制表示 例如20这个数字 SELECT BIN(「20」) 二进制表示为:10100 ?特别提示 某一些MYSQL中的特殊字符需要用转义字符才能插入数据库,否则产生意料之外的结果。 下面的特殊字符需要在输入时加反斜线符号开头 在插入这些特殊字符到数据库之前一定要进行转义处理 例如插入一个单引号,加了反斜杠,插入成功
好了,今天的开篇文章就到这儿吧,如果文章对你有点帮助,记得给冰河一键三连哦,欢迎将文章转发给更多的小伙伴,冰河将不胜感激~~ (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |