一 使用'='进行相等判断

mysql> SELECT 1=0, '2'=2, 2=2,'0.02'=0, 'b'='b', (1+3) = (2+2),NULL=NULL;
+-----+-------+-----+----------+---------+---------------+-----------+
| 1=0 | '2'=2 | 2=2 | '0.02'=0 | 'b'='b' | (1+3) = (2+2) | NULL=NULL |
+-----+-------+-----+----------+---------+---------------+-----------+
|   0 |     1 |   1 |        0 |       1 |             1 |      NULL |
+-----+-------+-----+----------+---------+---------------+-----------+
1 row in set (0.02 sec)

二 使用'<=>'进行相等的判断

mysql> SELECT 1<=>0, '2'<=>2, 2<=>2,'0.02'<=>0, 'b'<=>'b', (1+3) <=> (2+1),NULL<=>NULL;
+-------+---------+-------+------------+-----------+-----------------+-------------+
| 1<=>0 | '2'<=>2 | 2<=>2 | '0.02'<=>0 | 'b'<=>'b' | (1+3) <=> (2+1) | NULL<=>NULL |
+-------+---------+-------+------------+-----------+-----------------+-------------+
|     0 |       1 |     1 |          0 |         1 |               0 |           1 |
+-------+---------+-------+------------+-----------+-----------------+-------------+
1 row in set (0.00 sec)

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

三 使用'<>'和'!='进行不相等的判断

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

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

mysql> SELECT 'good'<>'god', 1<>2, 4!=4, 5.5!=5, (1+3)!=(2+1),NULL<>NULL;
+---------------+------+------+--------+--------------+------------+
| 'good'<>'god' | 1<>2 | 4!=4 | 5.5!=5 | (1+3)!=(2+1) | NULL<>NULL |
+---------------+------+------+--------+--------------+------------+
|             1 |    1 |    0 |      1 |            1 |       NULL |
+---------------+------+------+--------+--------------+------------+
1 row in set (0.00 sec)

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

四 使用'<='进行比较判断

mysql> SELECT 'good'<='god', 1<=2, 4<=4, 5.5<=5, (1+3) <= (2+1),NULL<=NULL;
+---------------+------+------+--------+----------------+------------+
| 'good'<='god' | 1<=2 | 4<=4 | 5.5<=5 | (1+3) <= (2+1) | NULL<=NULL |
+---------------+------+------+--------+----------------+------------+
|             0 |    1 |    1 |      0 |              0 |       NULL |
+---------------+------+------+--------+----------------+------------+
1 row in set (0.00 sec)

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

五 使用'<'进行比较判断

mysql> SELECT 'good'<'god', 1<2, 4<4, 5.5<5, (1+3) < (2+1),NULL<NULL;
+--------------+-----+-----+-------+---------------+-----------+
| 'good'<'god' | 1<2 | 4<4 | 5.5<5 | (1+3) < (2+1) | NULL<NULL |
+--------------+-----+-----+-------+---------------+-----------+
|            0 |   1 |   0 |     0 |             0 |      NULL |
+--------------+-----+-----+-------+---------------+-----------+
1 row in set (0.00 sec)

六 使用'>='进行比较判断

mysql> SELECT 'good'>='god', 1>=2, 4>=4, 5.5>=5, (1+3) >= (2+1),NULL>=NULL;
+---------------+------+------+--------+----------------+------------+
| 'good'>='god' | 1>=2 | 4>=4 | 5.5>=5 | (1+3) >= (2+1) | NULL>=NULL |
+---------------+------+------+--------+----------------+------------+
|             1 |    0 |    1 |      1 |              1 |       NULL |
+---------------+------+------+--------+----------------+------------+
1 row in set (0.00 sec)

七 使用'>'进行比较判断

mysql> SELECT 'good'>'god', 1>2, 4>4, 5.5>5, (1+3) > (2+1),NULL>NULL;
+--------------+-----+-----+-------+---------------+-----------+
| 'good'>'god' | 1>2 | 4>4 | 5.5>5 | (1+3) > (2+1) | NULL>NULL |
+--------------+-----+-----+-------+---------------+-----------+
|            1 |   0 |   0 |     1 |             1 |      NULL |
+--------------+-----+-----+-------+---------------+-----------+
1 row in set (0.00 sec)

八 使用IS NULL、ISNULL和IS NOT NULL判断NULL值和非NULL值

mysql> SELECT NULL IS NULL, ISNULL(NULL),ISNULL(10), 10 IS NOT NULL;
+--------------+--------------+------------+----------------+
| NULL IS NULL | ISNULL(NULL) | ISNULL(10) | 10 IS NOT NULL |
+--------------+--------------+------------+----------------+
|            1 |            1 |          0 |              1 |
+--------------+--------------+------------+----------------+
1 row in set (0.00 sec)

九 使用BETWEEN AND 进行值区间判断

mysql> SELECT 4 BETWEEN 4 AND 6, 4 BETWEEN 4 AND 6,12 BETWEEN 9 AND 10;
+-------------------+-------------------+---------------------+
| 4 BETWEEN 4 AND 6 | 4 BETWEEN 4 AND 6 | 12 BETWEEN 9 AND 10 |
+-------------------+-------------------+---------------------+
|                 1 |                 1 |                   0 |
+-------------------+-------------------+---------------------+
1 row in set (0.01 sec)mysql> SELECT  'x' BETWEEN 'f' AND 'g', 'b' BETWEEN 'a' AND 'c';
+-------------------------+-------------------------+
| 'x' BETWEEN 'f' AND 'g' | 'b' BETWEEN 'a' AND 'c' |
+-------------------------+-------------------------+
|                       0 |                       1 |
+-------------------------+-------------------------+
1 row in set (0.00 sec)

十 使用LEAST运算符进行大小判断

mysql> SELECT least(2,0), least(20.0,3.0,100.5), least('a','c','b'),least(10,NULL);
+------------+-----------------------+--------------------+----------------+
| least(2,0) | least(20.0,3.0,100.5) | least('a','c','b') | least(10,NULL) |
+------------+-----------------------+--------------------+----------------+
|          0 |                   3.0 | a                  |           NULL |
+------------+-----------------------+--------------------+----------------+
1 row in set (0.01 sec)

十一 使用GREATEST运算符进行大小判断

mysql> SELECT greatest(2,0), greatest(20.0,3.0,100.5), greatest('a','c','b'),greatest(10,NULL);
+---------------+--------------------------+-----------------------+-------------------+
| greatest(2,0) | greatest(20.0,3.0,100.5) | greatest('a','c','b') | greatest(10,NULL) |
+---------------+--------------------------+-----------------------+-------------------+
|             2 |                    100.5 | c                     |              NULL |
+---------------+--------------------------+-----------------------+-------------------+
1 row in set (0.00 sec)

十二 使用IN、NOT IN运算符进行判断

mysql> SELECT 2 IN (1,3,5,'thks'), 'thks' IN (1,3,5,'thks');
+---------------------+--------------------------+
| 2 IN (1,3,5,'thks') | 'thks' IN (1,3,5,'thks') |
+---------------------+--------------------------+
|                   0 |                        1 |
+---------------------+--------------------------+
1 row in set, 2 warnings (0.00 sec)

十三 存在NULL值时的IN查询

mysql> SELECT NULL IN (1,3,5,'thks'),10 IN (1,3,NULL,'thks');
+------------------------+-------------------------+
| NULL IN (1,3,5,'thks') | 10 IN (1,3,NULL,'thks') |
+------------------------+-------------------------+
|                   NULL |                    NULL |
+------------------------+-------------------------+
1 row in set, 1 warning (0.00 sec)

十四 使用运算符LIKE进行字符串匹配运算

mysql> SELECT 'stud' LIKE 'stud', 'stud' LIKE 'stu_','stud' LIKE '%d','stud' LIKE 't_ _ _', 's' LIKE NULL;
+--------------------+--------------------+------------------+----------------------+---------------+
| 'stud' LIKE 'stud' | 'stud' LIKE 'stu_' | 'stud' LIKE '%d' | 'stud' LIKE 't_ _ _' | 's' LIKE NULL |
+--------------------+--------------------+------------------+----------------------+---------------+
|                  1 |                  1 |                1 |                    0 |          NULL |
+--------------------+--------------------+------------------+----------------------+---------------+
1 row in set (0.00 sec)

十五 使用运算符REGEXP进行字符串匹配运算

mysql> SELECT 'ssky' REGEXP '^s', 'ssky' REGEXP 'y$', 'ssky' REGEXP '.sky', 'ssky' REGEXP '[ab]';
+--------------------+--------------------+----------------------+----------------------+
| 'ssky' REGEXP '^s' | 'ssky' REGEXP 'y$' | 'ssky' REGEXP '.sky' | 'ssky' REGEXP '[ab]' |
+--------------------+--------------------+----------------------+----------------------+
|                  1 |                  1 |                    1 |                    0 |
+--------------------+--------------------+----------------------+----------------------+
1 row in set (0.00 sec)

Mysql比较运算符实战相关推荐

  1. mysql 电商实战_MySQL与电子商务实战

    第一部分 MySQL基础 第1章 预备知识 1.1 数据库基础知识 1.1.1 数据和数据管理 1.1.2 数据库的概念 1.1.3 数据库系统的特征 1.1.4 数据库的设计 1.2 SQL基础知识 ...

  2. MySQL入门_实战6_MySQL数据的更新

    MySQL入门_实战系列文章目录 文章目录 MySQL入门_实战系列文章目录 前言 2 数据更新 2.1 语法格式 2.2 更新数据表中的所有记录 2.3 更新表中特定的数据行 2.4 更新某个范围内 ...

  3. 开发人员MySQL调优-实战篇2-让SQL使用索引详解

    2019独角兽企业重金招聘Python工程师标准>>> 建议先看看开发人员MySQL调优-实战篇0 让执行的SQL使用索引 虽然DBA给我们建了很多索引,但没有经验的开发人员往往只看 ...

  4. [实战]MVC5+EF6+MySql企业网盘实战(16)——逻辑重构3

    写在前面 本篇文章将新建文件夹的逻辑也进行一下修改. 系列文章 [EF]vs15+ef6+mysql code first方式 [实战]MVC5+EF6+MySql企业网盘实战(1) [实战]MVC5 ...

  5. MYSQL数值运算符和函数用法

    mysql也有数值运算,那么列出常见的函数 ceil() div() floor() mod() power() round() truncate()等等,具体说说MYSQL数值运算符和函数用法. 1 ...

  6. 收藏起来,史上最全的 MySQL 高性能优化实战总结!

    一.前言 MySQL 对于很多 Linux 从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰.在进行 MySQL 的优化之前必须要了解的就是 MySQL 的查询 ...

  7. MySQL高性能优化实战总结!

    1.1 前言 MySQL对于很多Linux从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰.在进行MySQL的优化之前必须要了解的就是MySQL的查询过程,很多 ...

  8. 史上最全的MySQL高性能优化实战总结!

    https://www.jianshu.com/p/4af41b682e06 1.1 前言 MySQL对于很多Linux从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思 ...

  9. MySQL的进阶实战篇

    关联文章: MySQL的初次见面礼基础实战篇 MySQL的进阶实战篇 本篇上一篇博文MySQL的初次见面礼基础实战篇的延续,是mysql的进阶内容的记录,本篇主要知识点如下: 进阶实战篇 进阶实战篇 ...

  10. 14、MySQL位运算符

    所谓位运算,就是按照内存中的比特位(Bit)进行操作,这是计算机能够支持的最小单位的运算.程序中所有的数据在内存中都是以二进制形式存储的,位运算就是对这些二进制数据进行操作. 位运算一般用于操作整数, ...

最新文章

  1. 激光点云感知 voxnet本质
  2. 【思维导图】Python中常用的8种字符串操作
  3. 【30集iCore3_ADP出厂源代码(ARM部分)讲解视频】30-10底层驱动之I2C
  4. 数据竞赛:第四届工业大数据竞赛-虚拟测量
  5. C/C++ 中指针和引用的区别
  6. 写了 20-50 年的代码,才明白的那些真理
  7. yarn : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本
  8. 无人机集群定位与编队方式研究总结(最详细的鸟群模型分析)
  9. 我的内核学习笔记5:proc目录文件创建及读写
  10. Comet OJ - Contest #11 题解赛后总结
  11. linux 安装启动ssh服务
  12. .ipynb文件怎么打开_Win10文件夹打开拒绝访问怎么解决?
  13. index.php上传到服务器找不到站点,ThinkPHP上传到服务器出现404,未找到index.php模板等问题...
  14. python os.access_Python用access判断文件是否被占用的实例方法
  15. Angular2.x
  16. java实现格拉布斯准则_格拉布斯准则附件.pdf
  17. Android Studio实现中华字典APP
  18. Unity3d+GameFramework:资源分析,资源依赖,循环依赖检测
  19. 平均获客成本_互联网金融获客成本
  20. 计算机毕业设计之java+ssm供应链管理信息系统

热门文章

  1. c语言kill暂停和恢复进程,Linux暂停和恢复进程
  2. USB驱动程序(四)——键盘驱动(控制传输)
  3. JavaScript——onblur事件失效问题解决方案
  4. php根据手机号码获取归属地,PHP通过API获取手机号码归属地,手机号码
  5. swift 框架大全
  6. 计算机cpu执行时间 指令条数的单位,计算机原理2015年10月真题(02384)
  7. 高清视频录制工具(Bandicam)v2.1.2.740中文使用技巧
  8. P1540 机器翻译洛谷题解
  9. word找不到橡皮擦工具
  10. android studio链接海马玩模拟器