mysql 查询结构组合_数据库 组合查询

组合查询

结构:select 列1,列2

from  表名

where 过滤条件

group by 列1,列2

having 聚合函数(列1)=值

group by 列1,列2

子查询:嵌套在其他查询中的查询

子查询的计算列:

限制:嵌套在select语句中的SQL 语句要求查询只能是单列单行

a.  from中的嵌套子查询

语法:select  列1,列2  from表名 where 列1=(子查询)

比较运算符:>/<=/>=/=/!=

b.in 和not in

子查询运算符(all any exists)

第一:in

语法:select * from 表名 where 列in(子查询)

第二:not in

语法:select * from 表名 where 列in(子查询)

c.where中的嵌套:

第一:all 如果子查询返回的所有值都满足比较运算,那么比较表达式就为真,否是假

第二:any如果子查询返回的值,只要有一行满足比较运算,那么比较表达式就为真,否则所有的每一行都不满足就是假。

第三:exists有返回值就为真

d.where 子句的嵌套:

exists/ not exists

使用exists运算符时只要子查询有数据,则为真,因此子查询的结果是单列或多列或单行或多行都行

在group by 中使用子查询

与select中嵌套类似,要求子查询只能返回单行单列值

在having中

与where中嵌套类似,只能用到聚合函数

在order by中:与select中嵌套类似,要求子查询只能返回单行单列值

Union :是一种联合两条或以上查询的运算符

类似多条查询结果,相组合的效果

语法:select  列1,列2    from1

Union

select  列3,列4    from2

使用它:;结构是一样查询的列数,自动去除重复的行,结果使用拼接

Union all :与union不同的地方:保留重复行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值