码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 肖sir__mysql之子查询语句__006


    一、子查询
    定义:一个查询嵌套另一个查询
    例如:
    题目:财务部门的收入总和;
    dept:财务部门
    incoming:工资
    (1)先将一个结果查询出来:财务部门的编号查询出来
    select dept1 from dept where dept_name=“财务”;(一个查询)
    (2)查询出来的结果作为一个条件,在查询
    select sum(incoming) from emp where dept2=(select dept1 from dept where dept_name=“财务” )

    二、子查询的分类
    1、标量子查询(返回一个值)
    标量子查询 把一个sql执行返回的一个值,作为另一sql的条件,得到的结果是一行一列,一般出现在where 之后
    select dept1 from dept where dept_name=“财务”;
    select sum(incoming) from emp where dept2=(select dept1 from dept where dept_name=“财务” )

    在这里插入图片描述
    注意点:
    标量子查询允许使用符号: =,>,<,>=,=<,<

    2、列子查询(返回一列)
    定义:返回的值是一列值,通常在where条件后使用:in ,not in

    案例:select dept1 from dept where dept_name=“财务” or dept_name=“销售” ;
    select sum(incoming) from emp where dept2 in (select dept1 from dept where dept_name=“财务” or dept_name=“销售” )group by dept2 ;
    在这里插入图片描述
    案例:求工资大于5000的部门
    select dept2 from emp where incoming>5000;

    select dept_name from dept where dept1 in (select dept2 from emp where incoming>5000)

    (3)行子查询(返回的是一行多列)
    定义:值子查询返回的结果集是一行多列,一般也是在where 后

    select incoming,dept2 from emp where name=“刘九” ;
    select * from emp where (incoming,dept2) =any( select incoming,dept2 from emp where name=“刘九” )
    在这里插入图片描述
    在这里插入图片描述
    (4)表子查询(多行多列)

    定义:子查询返回结果是一个表
    返回表,一般是在from 后,

    select * from dept INNER JOIN emp on dept.dept1=emp.dept2 ;
    select name from (
    select * from dept INNER JOIN emp on dept.dept1=emp.dept2 ) as s where dept_name=“财务” ;
    在这里插入图片描述
    注意:临时表 as 取别名,
    别名.incoming
    当出现重复字段情况处理方式:
    在这里插入图片描述
    select * from (select dept_name,emp.* from dept INNER JOIN emp on dept.dept1=emp.dept2 ) as s where s.dept_name=‘销售’

  • 相关阅读:
    redis数据库的下载安装/免安装版
    0006Java安卓程序设计-ssm基于Android的校园二手商品交易平台
    VR全景展览——开启全新视界的虚拟展览体验
    嵌入式开发--赛普拉斯cypress的铁电存储器FM25CL64B
    JavaScript 开发的历程
    【全国大学生统计建模】首次参与获得国家三等奖的经历
    每次抢票都被某软件坑加速包的钱?这个脚本你值得拥有,一毛不用花。
    【数据结构基础】Leetcode 43.字符串相乘
    充电桩高压安全测量方案
    React教程之 React 中 Render Props 和高阶组件HOC的详细介绍
  • 原文地址:https://blog.csdn.net/m0_47403059/article/details/132875002
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号