Mysql学习笔记(三)

Mysql子查询

所谓的子查询,就是在**一个查询中嵌套了其他的若干查询**。即在一个SELECT查询语句中的WHERE和FROM子句中包含另一个SELECT查询语句。在查询语句中,外层的SELECT查询语句称为**主查询**,WHERE子句中的SELECT查询语句被称为**子查询**,也称嵌套查询。

Mysql列子查询

列子查询是指查询结果返回的结果集是N行一列,该结果通常是来自对表的某个字段查询返回。
下面是一个列子查询的例子

SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1)
列子查询中使用IN,ANY,SOME和ALL操作符

这里写图片描述
上面的例子中,先返回table2的所有s2列结果(5,12,20),然后将table1中的s1的值与之进行比较,只要大于s2的任何值即表示为true,符合查询条件。

Msql行子查询

行子查询是指子查询返回的结果集是一行N列,该子查询的结果是对表的某行数据进行查询而返回的结果集。
下面是一个行子查询的例子

SELECT * FROM table1 WHERE (1,2) = (SELECT column1, column2 FROM table2)

WHERE后面的(1,2)被称为行构造符,也可以写作ROW(1,2)

Mysql表子查询

表子查询是指子查询返回的结果集是N行N列的一个表数据。
这里写图片描述

Mysql From子查询

from子查询是指from的字句作为子查询语句,子查询语句再到子查询结果集中获取需要的数据。
FROM子查询的语法如下

SELECT ... FROM (subquery) AS name ...

子查询会生成一个临时表,由于from子句中的每个表必须有一个名称,因此AS Name是必须的。
这里写图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值