由于我们无法在 MySQL 中使用 MINUS 查询,因此我们将使用 LEFT JOIN 来模拟 MINUS 查询。可以借助以下示例来理解:
示例
在此示例中,我们有两个表,即 Student_detail 和 Student_info,其内容如下数据 -
mysql> Select * from Student_detail; +-----------+---------+------------+------------+ | studentid | Name | Address | Subject | +-----------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 150 | Rajesh | Jaipur | Yoga | | 160 | Pradeep | Kochi | Hindi | +-----------+---------+------------+------------+ 7 rows in set (0.00 sec) mysql> Select * from Student_info; +-----------+-----------+------------+-------------+ | studentid | Name | Address | Subject | +-----------+-----------+------------+-------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 165 | Abhimanyu | Calcutta | Electronics | +-----------+-----------+------------+-------------+ 6 rows in set (0.00 sec)
现在,以下使用 LEFT JOIN 的查询将模拟 MINUS 以返回 Student_info 中的“studentid”值,但不返回 Student_detail 表中的值。
mysql> SELECT studentid from student_info LEFT JOIN Student_detail USING(studentid) WHERE student_detail.studentid IS NULL; +-----------+ | studentid | +-----------+ | 165 | +-----------+ 1 row in set (0.07 sec)
现在,以下查询将为我们提供与上述查询相反的结果,即它将返回 Student_detail 中的“studentid”值,但不会返回 Student_info 表中的值。
mysql> SELECT studentid from student_detail LEFT JOIN Student_info USING(studentid) WHERE student_info.studentid IS NULL; +-----------+ | studentid | +-----------+ | 150 | | 160 | +-----------+ 2 rows in set (0.00 sec)
复制本文链接文章为作者独立观点不代表优设网立场,未经允许不得转载。
文章推荐更多>
- 1UC浏览器m3u8转MP4方法
- 2mysql总是安装不上是怎么回事
- 3俄罗斯新引擎入口官网免登录 俄罗斯引擎无需登录网页入口
- 4oracle怎么把删除的数据恢复
- 5mongodb是什么意思
- 6ao3最新进入方法 ao3最新进入方式2025
- 7电脑如何下载谷歌浏览器 电脑端获取谷歌浏览器指南
- 8mysql属于哪种数据库服务器
- 9oracle数据库怎么查询
- 10oracle数据库监听端口怎么查看
- 11oracle数据库如何查看表结构
- 12mysql怎么创建用户
- 13oracle怎么用代码创建表
- 14ao3网页版进入不登录 ao3网页版进入同人文观看无需登录
- 15零日漏洞防御:实时监控CVE与沙箱分析
- 16oracle数据库如何备份数据库
- 17oracle delete语句怎么写
- 18电脑最简单的截图方法 一键截图操作指南
- 19安卓UC缓存视频保存到U盘
- 20oracle怎么写sql语句
- 21夸克怎么免费解压视频 视频解压操作指南
- 22电脑摄像头转监控设备软件配置指南
- 23redis是做什么的
- 24电脑截屏的快捷方式 快速截屏的快捷键大全
- 25oracle数据库怎么查询什么时候修改过
- 26oracle数据库怎么备份数据
- 27uc浏览器下载的小说在哪 uc小说下载位置与阅读管理技巧
- 28mysql中如何创建表
- 29wordpress如何开启https
- 30oracle怎么看存储过程执行到哪里了?

rh | Literature |
| 130 | Ram | Jhansi | Computers |
| 132 | Shyam | Chandigarh | Economics |
| 133 | Mohan | Delhi | Computers |
| 150 | Rajesh | Jaipur | Yoga |
| 160 | Pradeep | Kochi | Hindi |
+-----------+---------+------------+------------+
7 rows in set (0.00 sec)
mysql> Select * from Student_info;
+-----------+-----------+------------+-------------+
| studentid | Name | Address | Subject |
+-----------+-----------+------------+-------------+
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Chandigarh | Literature |
| 130 | Ram | Jhansi | Computers |
| 132 | Shyam | Chandigarh | Economics |
| 133 | Mohan | Delhi | Computers |
| 165 | Abhimanyu | Calcutta | Electronics |
+-----------+-----------+------------+-------------+
6 rows in set (0.00 sec)