当前位置: 首页 > news >正文

8.复合查询与内外连接

特别注意:NULL与任何数(包括NULL)运算都为NULL。
如果表达式有NULL参与运算,需要进行判断,ifnull(字段,为NULL时设定的值);

多表查询

select * from 表1,表2 ... 

表1和表2采用的就是笛卡尔积,对数据进行穷举组合。

自连接

自连接是指在同一张表连接查询
举例:显示员工FORD的上级领导的编号和姓名(mgr是员工领导的编号--empno)

用子查询:select  empno,ename  from  emp  worker,  emp leader  where worker.name='FROD'  and  leader.empno=worker.mgr;

        直接晒即可,这里用的是笛卡尔积,结果穷举完了。筛选行时,一定可以筛选出一行员工FORD直接对应的就是上级领导。

子查询

单行子查询:返回一行记录的子查询(一列单行)

多行子查询:返回多行记录的子查询(一列多行)
关键字:in(存在一个相同即可),all(所有都要满足),any(任意一个满足即可)

多列子查询:多列多行

多行多列查询方法:select * from 表 where (字段1,字段2)=(select语句);

特别注意:任何时刻,查询出来的临时结构,本质在逻辑上也是表结构。

可以在from子句后面跟上子查询,原因上。

解决多表查询的本质:想办法把多表转化成为单表,所有mysql中,所有select问题全部可以转化成单表问题。

合并查询

union用于取得两个结果集的并集。当使用该操作符时,会自动去掉结果集中的重复行。

union all同上,只不过不去掉重复行。

union前提,列完全一样(数量,字段类型)。

表的内外连接

内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选。

select 字段 from 表1 inner join 表2 on 连接条件 and 其他条件;
左外连接

  • select 字段名 from 表名1 left join 表名2 on 连接条件;
  • 保证左表的完整性,即使右表没有与之对应数据,还是存在,数据为NULL。

右外连接

  • select 字段 from 表名1 right join 表名2 on 连接条件;
  • 与左外连接保持一致
http://www.dtcms.com/a/454386.html

相关文章:

  • load_dotenv() 加载环境变量
  • 【C语言基础】数据类型、运算符与控制语句详解
  • 无限容量网站灵山建设局网站
  • 站长工具网站怎么做外围网站代理
  • 安泽网站建设网站seo在线检测
  • 廊坊企业建站模板东莞哪家做网站好
  • 做网站空间多大做网站前需要做什么准备
  • 中国建设工程造价管理协会登录网站wap网站排名
  • 商业网站建设设计装饰中国建设银行网站下载
  • 鸿蒙跨端开发:ArkTS与Java混合编程的性能边界测试
  • c 可以做网站嘛深度网络
  • StrFormatByteSize 函数:从字节到可读大小的转换
  • 服务器 做网站网站基础代码html
  • 【LaTeX】 15 LaTeX 错误处理指南
  • 建设新网站征求意见电商网站建设求职定位
  • 怎样拍照产品做网站安徽合肥中国建设银行网站首页
  • JSP 表达式语言
  • DeepSeek“问道”-第九章:问救赎 —— 携镣铐而舞,向宽阔处行
  • 网站开发需要学些什么网站建设与管理的网页
  • 好听的网站名称建一个网站首先要怎么做
  • 2025-10-07 考场防烫tips P5091
  • 零件加工网微软优化大师
  • 第五十章 ESP32S3 WiFi 热点实验
  • 在线个人资料制作网站一键生成微信小程序平台
  • sed 命令使用手册
  • 网站建设伍金手指下拉3asp网站转wap网站
  • 南平建设集集团网站南京建站软件
  • 万网网站后台管理个人网站备注模板
  • 海南房产网站建设wordpress tag静态化
  • (五) Dotnet对AI控制台添加构造工厂类