MySQL子查询作为列_15.mysql子查询(subquery)标量子查询 列子查询 行子查询 表子查询...

本文详细介绍了MySQL中子查询的四种类型:标量子查询、列子查询、行子查询和表子查询,并通过实例解释了它们在where子句中的应用,同时提到了与子查询相关的in、any、all关键字以及exists子查询的用法。
摘要由CSDN通过智能技术生成

15.1.子查询的概念

子查询就是指一个“正常查询语句”中的某个部分(比如select部分,from部分, where部分)又出现了查询的一种查询形式,比如:

select * from XX表名 where price >= (一个子查询语句);

此时,子查询所在上“上层查询”,就被称为主查询。

也可以这么说:子查询是为主查询的某个部分提供某种数据的查询。比如一个商品表中的平均价(需要计算、统计的)

上一条语句中,括号中的子查询语句如果查出的是一个“某个数值”(比如3000),则其就相当于:

format,png

15.2.标量子查询

含义:

标量子查询就是指子查询的结果是“单个值”(一行一列)的查询。

使用:

标量子查询通常用在where子句中,作为主查询的一个条件判断的数据。

本质上,标量子查询的结果,就可以直接当做“一个值”来使用。

找出产品表中价格大于北京产地的产品平均价的所有产品。

-- 子查询:

找出产品表中价格大于北京产地的产品平均价的所有产品。

select * from product where price > (

#查询出北京产地所有产品的平均价

select avg(price) from product where chandi='北京'

);

format,png

课堂练习:找出所有奢侈品!

format,png

select * from product where price > (

#找出贵重品的平均价

select avg(price) from product where price > (

#去找出所有商品的平均价

select avg(price) from product

)

);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值