简介

sql叫做结构化查询语言,本质利用的就是关系代数中的操作,比如常用的并、交、差、投影、选择等操作。

其中并、交、差是常用的操作,本文就看看MySQL中的sql语言是怎么提供对应的关系代数操作的。

并的符号是∪,含义就是将两个集合合并到一块。

MySQL中提供的是union关键字,会去重

select id from A union select id from B;  //A B数据结构一定要一样

MySQL中还提供了union all 关键字,不会过滤重复元素。

select id from A union all select id from B;  //A B数据结构一定要一样

交的符号是∩,含义是取两个集合的共同元素。

MySQL中没有直接提供求交集的关键字,我们可以通过其他关键字来模拟实现

1、in

select id from A where id in (select id from B);

通过 in 来选择A中的元素,选择条件就是A中的元素需要在B中出现

2、join

通过内连接

select A.id from A inner join B where A.id = B.id;

差的符号是 - ,A - B的含义是 只存在于A集合中,而不存在于B集合中的元素。

MySQL没有对应的直接操作符,也可以通过其他操作符来操作。

1、not in

select id from A where id not in (select id from B);

2、join

使用leftjoin

select A.id  from A left join B on A.id = B.id where B.id is null;

MySQL中实现并、交、差相关推荐

  1. mysql中日期怎样求差_在Sql语句中怎样计算出两个日期的差值

    展开全部 sql语句中计算两个日期的差值用32313133353236313431303231363533e4b893e5b19e31333365643662datediff函数. 工具:sqlser ...

  2. mysql节假日函数_如何在MySQL中计算不包括周末和节假日的日期差

    我需要计算两个日期之间的天数(工作日),不包括周末(最重要)和假期 SELECT DATEDIFF(end_date, start_date) from accounts 但是,我不知道该如何在MyS ...

  3. mysql中生成字符串对应的英文字母(拼音首字母)

    mysql中生成字符串对应的英文字母(拼音首字母)的存储过程,触发器和函数 1.规则 1.1.输入字符串长度255(可变),输出字符串10(可变) 1.2.对于全英文字母或数字,输出空格后的首字符,均 ...

  4. MySQL中基于XA实现的分布式事务

    文章目录 一.前言 二.XA基础 2.1 XA基础知识 2.1.1 DTP是什么? 2.1.2 DTP的结构:AP TM RM(重点001) 2.1.3 DTP的重要概念 2.2 XA事务:基于两阶段 ...

  5. mysql中的float_mysql里float是什么东西

    展开全部 今天做实验,本来以前都已经做得差不多了的,可突然U盘一下子坏掉,计算机无法识62616964757a686964616fe78988e69d8331333335336537别,驱动重装没用, ...

  6. mysql中的 explain 关键字学习笔记

    explain 查看sql的执行计划,使用该关键字可以查看分析sql 语句在 mysql 中的执行步骤,索引的使用,可以检查该sql 语句和表结构的性能瓶颈,在sql 优化中工作可以说该关键字是相关开 ...

  7. mysql user.isd_如何实现MySQL中的用户管理

    如何实现MySQL中的用户管理 MySQL有一套先进的但非标准的安全/授权系统,掌握其授权机制是开始操作MySQL数据库必须要走的第一步,对于一个熟悉SQL基本操作的人来说,也是MySQL所有的知识中 ...

  8. MySQL 中的反斜杠 \\,真是太坑了!!

    作者 | 陈哈哈 来源 | https://blog.csdn.net/qq_39390545/article/details/117296607 在MySQL中有很多特殊符号都是相当恶心的,比如字符 ...

  9. MYSQL中RAND子句的使用_mysql优化--rand()优化

    众所周知,在mysql中,随机的取10条数据,如:select * from users order by rand() limit 10,效果非常差,因为会多次的执行,如果等值查询用rand()也是 ...

最新文章

  1. window下使用nw.js开发桌面应用程序环境的搭建
  2. Cacti安装插件:email,msn,fetion报警(转载)
  3. python 公众号爬虫_python_爬虫_微信公众号抓取
  4. 线性条件随机场代码解读
  5. jquery.imageScroller实现图片滚动
  6. 从volume表的host字段开始学习RPC
  7. 金蝶K3 Wise单据导入导出工具使用说明
  8. 汽车驾驶 - 侧方停车
  9. 磁盘配额超出 linux,Linux磁盘配额应用
  10. 纯前端实现页面的回到顶部和回到底部功能
  11. 揭秘java虚拟机 kindle_Kindle有一个java虚拟机
  12. 杰理之79NRTC 时间【篇】
  13. KNN算法实现鸢尾花的分类
  14. J2EE高级开发框架小课程之Spring框架1——Spring创建三种方式:使用无参构造器创建对象(bean标签的方式),使用静态方法创建对象,使用实例方法创建对象(非静态方法)
  15. request.args.get()用法
  16. Dragon of Loowater UVA - 11292
  17. AndroidStudio制作个人资料界面模块以及SQLite数据库的使用
  18. c语言中f5的作用,3G的AKA协议中F1至F5的UE端的实现(附代码C语言)
  19. Flash时钟制作(注意:不是钟表式的)
  20. 《动手学深度学习Pytorch版》中‘d2lzh_pytorch‘模块问题

热门文章

  1. 如何让图片充满excel单元格_如何在Excel单元格建立下拉菜单
  2. [转载] java中的经典问题:传值与传引用
  3. [转载] 使用Python编写打字训练小程序
  4. 离散点自动生成等高线_有限自动机| 离散数学
  5. thinkphp3 php jwt,ThinkPHP5 使用 JWT 进行加密
  6. php有多少魔术方法,PHP常用的几个魔术方法
  7. 查看文件二进制编码_小白也能学会系列:用python文件读写代码实例!(简单案例)...
  8. 网页设置页数/总页数_图书分配问题(分配最小页数)
  9. 英语笔记:写作:Free admissionsto museums
  10. Of Study - Francis Bacon