mysql中有4类运算符,它们是:

算术运算符

比较运算符

逻辑运算符

位操作运算符

算术操作符

算术操作符是SQL中最基本的操作运算符,主要有一下几种运算符:

+(加)、 -(减)、 *(乘)、 /(除)、 %(求余或者模)

算术操作符测试案例:

创建表tmp14,定义数据类型为INT的字段num,插入值64,对num值进行算术运算:

首先创建表tmp14,输入语句如下:

CREATE TABLE tmp14 ( num INT);

向字段num插入数据64:

INSERT INTO tmp14 value(64);

接下来,对num值进行加法和减法运算:

SELECT num, num+10, num-3+5, num+5-3, num+36.5 FROM tmp14;

由计算结果可以看到,可以对num字段的值进行加法和减法的运算,而且由于’+’和’–’的优先级相同,因此先加后减,或者先减后加之后的结果是相同的。

对tmp14表中的num进行乘法、除法运算。

SELECT num, num *2, num /2, num/3, num%3 FROM tmp14;

由计算结果可以看到,对num进行除法运算时候,由于64无法被3整除,因此MySQL对num/3求商的结果保存到了小数点后面四位,结果为21.3333;64除以3的余数为1,因此取余运算num%3的结果为1。

在数学运算时,除数为0的除法是没有意义的,因此除法运算中的除数不能为0,如果被0除,则返回结果为NULL。

由计算结果可以看到,对num进行除法求商或者求余运算的结果均为NULL。

比较运算符

一个比较运算符的结果总是1,0或者是NULL。MySQL中的比较运算符有:

=、<=>、<> (!=)、<=、>=、>、IS NULL、IS NOT NULL、LEAST、GREATEST、BETWEEN . . . AND. . . 、ISNULL、IN、NOT IN、LIKE、REGEXP

使用‘=’进行相等判断,SQL语句如下:

SELECT 1=0, '2'=2, 2=2,'0.02'=0, 'b'='b', (1+3) = (2+2),NULL=NULL;

使用’<=>’进行相等的判断,SQL语句如下:

由结果可以看到,’<=>’在执行比较操作时和’=’的作用是相似的,唯一的区别是’<=>’可以用来对NULL进行判断,两者都为NULL时返回值为1。

不等于运算符 <>或者 !=

‘<>’或者’!=’用于判断数字、字符串、表达式不相等的判断。如果不相等,返回值为1;否则返回值为0。这两个运算符不能用于判断空值NULL。

使用’<>’和’!=’进行不相等的判断,SQL语句如下:

SELECT 'good'<>'god', 1<>2, 4!=4, 5.5!=5, (1+3)!=(2+1),NULL<>NULL;

由结果可以看到,两个不等于运算符作用相同,都可以进行数字、字符串、表达式的比较判断。

使用’<=’进行比较判断,SQL语句如下:

SELECT 'good'<='god', 1<=2, 4<=4, 5.5<=5, (1+3) <= (2+1),NULL<=NULL;

由结果可以看到,左边操作数小于或者等于右边时,返回值为1,例如:4<=4;当左边操作数大于右边时,返回值为0,例如:’good’第3个位置的’o’字符在字母表中的顺序大于’god’中的第3个位置的’d’字符,因此返回值为0;同样比较NULL值时返回NULL。

使用’

SELECT 'good'

使用’>=’进行比较判断,SQL语句如下:

SELECT 'good'>='god', 1>=2, 4>=4, 5.5>=5, (1+3) >= (2+1),NULL>=NULL;

使用’>’进行比较判断,SQL语句如下:

SELECT 'good'>'god', 1>2, 4>4, 5.5>5, (1+3) > (2+1),NULL>NULL;

使用IS NULL、ISNULL和IS NOT NULL判断NULL值和非NULL值,SQL语句如下:

SELECT NULL IS NULL, ISNULL(NULL),ISNULL(10), 10 IS NOT NULL;

使用BETWEEN AND 进行值区间判断,输入SQL语句如下:

SELECT 4 BETWEEN 4 AND 6, 4 BETWEEN 4 AND 6,12 BETWEEN 9 AND 10;

SELECT 'x' BETWEEN 'f' AND 'g', 'b' BETWEEN 'a' AND 'c';

使用LEAST运算符进行大小判断,SQL语句如下:

SELECT least(2,0), least(20.0,3.0,100.5), least('a','c','b'),least(10,NULL);

使用GREATEST运算符进行大小判断,SQL语句如下:

SELECT greatest(2,0), greatest(20.0,3.0,100.5), greatest('a','c','b'),greatest(10,NULL);

使用IN、NOT IN运算符进行判断,SQL语句如下:

SELECT 2 IN (1,3,5,'thks'), 'thks' IN (1,3,5,'thks');

存在NULL值时的IN查询,SQL语句如下:

SELECT NULL IN (1,3,5,'thks'),10 IN (1,3,NULL,'thks');

使用运算符LIKE进行字符串匹配运算,SQL语句如下:

SELECT 'stud' LIKE 'stud', 'stud' LIKE 'stu_','stud' LIKE '%d','stud' LIKE 't_ _ _', 's' LIKE NULL;

使用运算符REGEXP进行字符串匹配运算,SQL语句如下:

SELECT 'ssky' REGEXP '^s', 'ssky' REGEXP 'y$', 'ssky' REGEXP '.sky', 'ssky' REGEXP '[ab]';

逻辑运算符

逻辑运算符的求值所得结果均为TRUE、FALSE或NULL。

逻辑运算符有:

NOT 或者 !

AND 或者 &&

OR 或者 ||

XOR(异或)

使用非运算符“NOT”和“!”进行逻辑判断,SQL语句如下:

SELECT NOT 10, NOT (1-1), NOT -5, NOT NULL, NOT 1 + 1;

SELECT !10, !(1-1), !-5, ! NULL, ! 1 + 1;

使用与运算符“AND”和“&&”进行逻辑判断,SQL语句如下:

SELECT 1 AND -1,1 AND 0,1 AND NULL, 0 AND NULL;

SELECT 1 && -1,1 && 0,1 && NULL, 0 && NULL;

使用或运算符“OR”和“||”进行逻辑判断,SQL语句如下:

SELECT 1 OR -1 OR 0, 1 OR 2,1 OR NULL, 0 OR NULL, NULL OR NULL;

SELECT 1 || -1 || 0, 1 || 2,1 || NULL, 0 || NULL, NULL || NULL;

使用异或运算符“XOR”进行逻辑判断,SQL语句如下:

SELECT 1 XOR 1, 0 XOR 0, 1 XOR 0, 1 XOR NULL, 1 XOR 1 XOR 1;

执行上面的语句,结果如下。

位运算符

位运算符是用来对二进制字节中的位进行测试、移位或者测试处理。位运算符有:

位或(|)

位与(&)

位异或(^ )

位左移(<

位右移(<

位取反(~)

使用位或运算符进行运算,SQL语句如下:

SELECT 10 | 15, 9 | 4 | 2;

使用位与运算符进行运算,SQL语句如下:

SELECT 10 & 15, 9 &4& 2;

使用位异或运算符进行运算,SQL语句如下:

SELECT 10 ^ 15, 1 ^0, 1 ^ 1;

使用位左移运算符进行运算,SQL语句如下:

SELECT 1<<2, 4<<2;

使用位右移运算符进行运算,SQL语句如下:

SELECT 1>>1, 16>>2;

使用位取反运算符进行运算,SQL语句如下:

SELECT 5 & ~1;

运算符的优先级

运算的优先级决定了不同的运算符在表达式中计算的先后顺序。

级别高的运算符先进行计算,如果级别相同,MySQL按表达式的顺序从左到右依次计算。当然,在无法确定优先级的情况下,可以使用圆括号“()”来改变优先级。

mysql与_mysql常见的运算符及使用相关推荐

  1. mysql交集_MySQL交集INTERSECT运算符

    在本教程中,我们将向您介绍SQL INTERSECT运算符,并展示如何模拟MySQL INTERSECT运算符(交集). 1. SQL INTERSECT操作符简介 INTERSECT运算符是一个集合 ...

  2. mysql交集_mysql交集INTERSECT运算符的具体应用方法

    集合论中,设A,B是两个集合,由所有属于集合A且属于集合B的元素所组成的集合,叫做集合A与集合B的交集(intersection),记作A∩B. INTERSECT运算符是一个集合运算符,它仅返回两个 ...

  3. mysql故障诊断_mysql常见故障诊断

    作为故障预警,应该尽量把问题扼杀在摇篮中,当出现问题及时处理,否则等到服务器宕机,再去"救火"工作,往往不能第一时间准确诊断.所以应建立监控流程,能够提前预警阀值,马上查看问题,降 ...

  4. 简单mysql优化_mysql常见语句的简单优化策略

    常见sql优化方法 (1)优化insert语句 大批量插入数据: 对于Myisam类型的表,可以通过以下方式快速的导入大量的数据. ALTER TABLE tblname DISABLE KEYS; ...

  5. mysql 公式_MySQL常见公式汇总1

    #筛选每组比自己小的数量个数 select t1.company, t1.remark, t1.score, (select count(1) from sheet t2 where t1.remar ...

  6. MySQL支持的四种索引_Mysql常见四种索引的使用

    提到mysql优化,索引优化是必不可少的.其中一种优化方式 --索引优化,添加合适的索引能够让项目的并发能力和抗压能力得到明显的提升. 我们知道项目性能的瓶颈主要是在"查(select)&q ...

  7. mysql 除号_MySql的运算符-阿里云开发者社区

    数据库中的表结构确立后,表中的数据代表的意义就已经确定.而通过MySQL运算符进行运算,就可以获取到表结构以外的另一种数据.例如,学生表中存在一个birth字段,这个字段表示学生的出生年份.而运用My ...

  8. 【大话Mysql面试】-常见SQL语句书写

    [大话Mysql面试]-常见SQL语句书写 4.1 SQL语句主要分为哪几类? 数据定义语言DDL(Data Defination Language):主要为create drop alter等操作, ...

  9. centos mysql安装_mysql yum源安装

    部署服务器环境的时候经常要安装mysql,以下是常见的安装方式 源码安装 rpm包安装 yum源安装 这篇主要介绍yum源安装. yum源下载 进入 https://dev.mysql.com/dow ...

  10. Linux下安装mysql(2) 及常见问题解决(CentOS)

    Linux下安装mysql(2) 及常见问题解决(CentOS) 参考文章: (1)Linux下安装mysql(2) 及常见问题解决(CentOS) (2)https://www.cnblogs.co ...

最新文章

  1. Pytorch | BERT模型实现,提供转换脚本【横扫NLP】
  2. 高性能mysql 第六章_高性能MySQL 第六章
  3. Python基础语法精心总结!看完都知道的可以往下继续学习了
  4. 返回一个list的全部 倒叙排列的方法
  5. 中计算散度的函数_梯度、散度、旋度
  6. PHP三维数组变一维
  7. java 允许魔术变量_PHP超级全局变量、魔术变量和魔术函数汇总整理
  8. h5案例欣赏及分析_2019下半年,10个优秀H5案例参考
  9. Java书店管理系统
  10. Qemu复现雄迈摄像头固件漏洞
  11. 水星逆行对股市涨跌的实证检验
  12. 数据科学 IPython 笔记本 8.16 地理数据和 Basemap
  13. 填表统计预约打卡表单系统
  14. 1360: plank 栅栏修复
  15. linux常用命令词典
  16. 数据结构笔记(持续更新)
  17. NETSCOUT Aircheck G2-TA-KT无线WIFI测试标准
  18. 摇奖机是按照金字塔的原理设计的
  19. 山艺2021年高考成绩查询,2021年山东艺术学院高考录取结果什么时候出来及查询系统入口...
  20. 专访新浪微博黄波:千人千面,机器学习赋能用户信息流消费

热门文章

  1. C# DateTime的ToString()方法的使用
  2. Response.Redirect导致session丢失的解决办法
  3. stl list中erase和remove区别
  4. 知产新观察 | 商家要敢于向知产流氓及恶意投诉说不!
  5. ARM 和 RISC-V 公然开撕,GNOME 之父指责 ARM
  6. windows中的hosts文件
  7. 如何得到当前程序执行的堆栈
  8. MVC项目开发中那些用到的知识点(Ajax.BeginForm)
  9. 点击触发ajax重复提交表单,屡次连续点击致使Ajax重复提交
  10. SpringBoot的C2C水果商城系统