问题 :

我在看以前的一个开发者的代码时看到

在这个查询语句中 <=>符号是什么意思啊?是不是和 =号是一样啊?还是一个语法错误啊?但是没有显示任何错误或者异常。我已经知道了mysql中的 <> = !=等符号。

最佳回答 :

和=号的相同点

像常规的=运算符一样,两个值进行比较,结果是0(不等于)或1(相等);换句话说:'A'<=>'B'得0和'a'<=>'a‘得1。

2.和=号的不同点

和=运算符不同的是,NULL的值是没有任何意义的。所以=号运算符不能把NULL作为有效的结果。所以:请使用<=>,

'a' <=> NULL 得0   NULL<=> NULL 得出 1。和=运算符正相反,=号运算符规则是 'a'=NULL 结果是NULL 甚至NULL = NULL 结果也是NULL。顺便说一句,mysql上几乎所有的操作符和函数都是这样工作的,因为和NULL比较基本上都没有意义。

用处

当两个操作数中可能含有NULL时,你需要一个一致的语句。

... WHERE col_a <=> ? ...

这里的占位符有可能是常量也有可能是NULL,当使用<=>运算符时,你没有必要对查询语句做任何修改。

相关操作符

除了 <=> ,还有两个其他的操作符用来处理某个值和NULL做比较,也就是IS NULL and IS NOT NULL。他们是ANSI标准中的一部分,因此也可以用在其他数据库中。而<=>只能在mysql中使用。

你可以把<=>当作mysql中的方言。

'a' IS NULL ==> 'a' <=> NULL

'a' IS NOT NULL ==> NOT('a' <=> NULL)

据此,你可以把这个查询语句段改的更具移植性一点:

mysql中gt用法_讲解MySQL中lt;=gt;操作符的用法-一团网相关推荐

  1. python中if else语句用法_讲解Python中if语句的嵌套用法

    可能有这样一种情况,当你想检查其他条件后一个条件解析为真.在这种情况下,可以使用嵌套的if结构. 在嵌套的 if 语句结构,可以在一个 if... elif... else 结构里面可有另外一个 if ...

  2. MYSQL数据库ANY的用法_列子查询中使用 IN、ANY、SOME 和 ALL 操作符

    由于列子查询返回的结果集是 N 行一列,因此不能直接使用 = > < >= <= <> 这些比较标量结果的操作符.在列子查询中可以使用 IN.ANY.SOME 和 ...

  3. mysql 如何对表排序_学习MySQL:对表中的数据进行排序和过滤

    mysql 如何对表排序 In this article, we will learn how we can sort and filter data using the WHERE clause a ...

  4. mysql 添加int列_在MySQL中现有的int列的值中添加字符?

    要将字符添加到现有的int列值中,请使用MySQL CONCAT().让我们首先创建一个表-mysql> create table DemoTable ( Amount int ); 使用插入命 ...

  5. mysql against包含英文_在MySQL中使用MATCH和AGAINST选择特定列中包含字符串的行

    让我们首先创建一个表-mysql> create table DemoTable1833 ( Name varchar(20) ); 修改表-Mysql> alter table Demo ...

  6. mysql shell 所有表_删除mysql数据库中所有表的shell脚本

    分享一个可以删除mysql中所有表的shell脚本,代码如下: 复制代码 代码示例: #!/bin/bash # 删除mysql中所有表 # 示例: # Usage: ./script user pa ...

  7. mysql zerofill设置方法_在MySQL中使用ZEROFILL设置自定义自动增量

    让我们首先创建一个表.这里.我们使用ZEROFILL和AUTO_INCREMENT设置了UserId列mysql> create table DemoTable1831 ( UserId int ...

  8. mysql 比较一个字符串_比较MySQL中的两个字符串?

    为了比较两个数字字符串,让我们首先创建一个表.以下是查询-mysql> create table compareTwoStringsDemo -> ( -> Id int NOT N ...

  9. mysql重复添加计数_从MySQL中的单个列获取重复值的计数?

    让我们首先创建一个表-mysql> create table DemoTable -> ( -> Number int -> ); 使用插入命令在表中插入一些记录-mysql& ...

最新文章

  1. 大型网站的 HTTPS 实践(1):HTTPS 协议和原理
  2. 皮一皮:这位家长,建议自己退群聊...
  3. SFC扫描恢复系统文件
  4. 小程序完整对接 pingpp支付
  5. memcached协议
  6. jQuery plugin 开发的一个例子
  7. Net设计模式实例之访问者模式(Visitor Pattern)
  8. Spring boot常见标签、注解解释
  9. java rtmp录制视频_red5-rtmp-push
  10. java打包----“Artifacts”
  11. 从零开始学编程系列汇总
  12. aizu 0121 Seven Puzzle
  13. Excel在筛选后进行排序的函数
  14. opencv学习(四十四)之图像角点检测Harris
  15. Oracle函数保留两位小数
  16. 计算机英语六级时间,计算机一级考试_6月英语六级报名时间
  17. Outlook设置规则的一点提示
  18. python 压缩算法_lzma — 用 LZMA 算法压缩
  19. SAP UI5 应用开发教程之一百 - 如何修改 SAP UI5 框架的源代码实现,以及使用本地部署的 SAP UI5 SDK 试读版
  20. mysql tablespace is missing for table_Mysql报错:Tablespace is missing for table ‘db_rsk/XXX”

热门文章

  1. U.S. zip code
  2. Windows磁盘管理(Raid)
  3. 在Ubuntu16.04系统上更新FireFox浏览器(即火狐浏览器)到最新版本
  4. 线程池、volatile、原子性、并发工具类
  5. 直线回归和相关------(二)直线回归的假设测验和区间估计以及matlab实现
  6. 5个最好的WordPress电商插件比较 - 2019年
  7. 番茄插件安装及使用介绍
  8. Probability and Stochastic Models(1) —— 研一新课学习笔记
  9. 通过JavaMail下载邮件附件
  10. 6.论文学习Modality-aware Mutual Learning for Multi-modal Medical Image Segmentation