前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL数据库:第九章:子查询

MySQL数据库:第九章:子查询

作者头像
马克社区
发布2023-08-31 16:20:07
1620
发布2023-08-31 16:20:07
举报
文章被收录于专栏:高端IT

回退至Mysql数据库理论与实战 #子查询

概念:出现在其他语句内部的select语句,称为子查询或内查询 其他语法:可以是select语句,也可以是create、insert、update等。只是select语句出现的较多 外面如果是select语句,称为主查询或外查询 位置: 子查询可以放在select语句中的select后面、from后面、where或having后面、exists后面 分类:(放在where或having后面) 单行子查询:子查询的结果只有一行 多行子查询:子查询的结果可以有多行 特点: ①子查询一般需要使用小括号括起来,为了提高阅读性 ②子查询一般放在条件的右侧 ③子查询优先于主查询执行,主查询使用到了子查询的结果 ④单行子查询一般搭配单行操作符使用 单行操作符:> < = <> >= <= 多行子查询一般搭配多行操作符使用 多行操作符:in/not in、any、all

#一、单行子查询

注意: 单行子查询的结果肯定是一行一列,不能是多行,也不能是空值

#案例1:谁的工资比 Abel 高? #①查询Abel的工资 SELECT salary FROM employees WHERE last_name = ‘Abel’ #②查询哪个员工的工资>① SELECT last_name,salary FROM employees WHERE salary>( SELECT salary FROM employees WHERE last_name = ‘Abel’ ); #案例2:返回job_id与141号员工相同,salary比143号员工多的员工姓名,job_id 和工资 #①查询141号员工的job_id SELECT job_id FROM employees WHERE employee_id = 141 #②查询143号员工的salary SELECT salary FROM employees WHERE employee_id = 143 #③查询job_id = ① 并且salary>②的员工姓名,job_id 和工资 SELECT last_name,job_id,salary FROM employees WHERE job_id = ( SELECT job_id FROM employees WHERE employee_id = 141 ) AND salary>( SELECT salary FROM employees WHERE employee_id = 143

更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/120684170

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档