MySQL子查询详细教程

作者:腹白 时间:2024-01-22 07:42:04 

定义:select语句中嵌套select语句,被嵌套的select语句是子查询。

子查询可以出现在:

select
....(select)..
from
....(select)..
where
....(select)..

1.where后面嵌套子查询

select * from emp where sal > (select avg(sal) from emp) ;

2.from后面嵌套子查询*

MySQL子查询详细教程

SELECT d.dname,AVG(s.grade) '部门平均薪资'
FROM emp e
JOIN salgrade s ON e.sal BETWEEN s.losal AND s.hisal
JOIN dept d ON e.deptno = d.deptno
GROUP BY d.dname

3.在select 后面嵌套子查询

找出每个员工所在的部门名称

写法一:看作临时表
SELECT t.ename,d.dname
FROM dept d JOIN (SELECT e.ename,e.deptno FROM emp e) t ON t.deptno = d.deptno  

写法二:连接查询
SELECT e.ename,d.dname FROM emp e JOIN dept d ON e.deptno = d.deptno

写法三:select后嵌套子查询
SELECT e.ename,(SELECT d.dname FROM dept d WHERE d.deptno = e.deptno) AS dept FROM emp e ;

4.union

可将查询结果集相加

SELECT ename,job FROM emp e WHERE job = 'CLERK'
UNION
SELECT ename,job FROM emp e WHERE job = 'SALESMAN'

而且两张不相干的表中数据也能够因此拼接在一起。(但是列数保持一致)

SELECT ename FROM emp
UNION
SELECT dname FROM dept

5.*limit

重点中的重点,分页查询全靠它

1)limit是mysql * 有的,其他数据库中没有,但是Oracle中有一个相同的机制叫rownum。

2)limit取结果集中的部分数据

3)语法机制:limit startIndex,length

startindex表示起始位置,从0开始,0表示第一条数据。

length表示取几个。

4)limit是sql语句中最后一个执行的环节。

MySQL子查询详细教程

(当前页数-1)* 页的大小 = 当前页起始下标

来源:https://www.cnblogs.com/wyh518/p/16807948.html

标签:mysql,子查询
0
投稿

猜你喜欢

  • Python命令行参数解析工具 docopt 安装和应用过程详解

    2022-01-15 05:31:05
  • PHP simplexml_load_string()函数实例讲解

    2023-07-09 07:19:28
  • Go 语言的 :=的具体使用

    2024-05-10 13:58:56
  • vue判断input输入内容全是空格的方法

    2024-04-09 10:48:01
  • innerHTML在Mozilla Firefox和Opera下执行的一个特例情况。

    2023-09-16 11:23:46
  • Python 根据数据模板创建shapefile的实现

    2023-07-27 00:10:32
  • python实现五子棋游戏(pygame版)

    2021-09-15 16:01:42
  • sql函数:去掉html代码

    2008-04-07 12:44:00
  • 解决安装python库时windows error5 报错的问题

    2022-06-14 05:26:04
  • Python递归求出列表(包括列表中的子列表)的最大值实例

    2023-01-17 06:02:16
  • 浅析Golang中的协程(goroutine)

    2024-04-29 13:05:08
  • Python实现邮件发送的详细设置方法(遇到问题)

    2023-10-05 23:03:00
  • python生成ppt的方法

    2021-11-08 11:50:48
  • django框架两个使用模板实例

    2023-11-01 20:05:18
  • python单元测试unittest实例详解

    2023-10-16 08:26:49
  • 对Keras自带Loss Function的深入研究

    2021-08-27 03:18:24
  • Python中if elif else及缩进的使用简述

    2021-06-18 18:29:36
  • FrontPage XP中的设计技巧

    2008-07-17 10:49:00
  • python 监控服务器是否有人远程登录(详细思路+代码)

    2022-05-16 04:08:26
  • Python定义函数实现累计求和操作

    2021-07-07 00:54:19
  • asp之家 网络编程 m.aspxhome.com