第三章 SQL高级查询总结

1.子查询的特点和优势
(1).使用灵活,可以成为SQL语句的多个部分。
    *子查询作为查询条件使用
    *子查询作为临时表使用
    *子查询作为列使用
(2).降低SQL的语句的复杂度,提高SQL语句的可读性。

2.使用IN和NOT IN完成子查询
 *IN和NOT IN通常在where子句中使用,在IN和NOT IN后接的子查询中,可以有多个值出现,但必须只能有一列。IN子句中可以包含多个值,值之间使用逗号隔开。

3.使用exists和not exists子查询
*exists和not exists表示存在和不存在的意思。
*在语句中会判断exists和not exists后接的子句是否存在和是否不存在。

4.使用some,any,all进行子查询
*在SQL查询中,some,any,all后必须跟子查询。
*在SQL查询中,some和any的作用是一样的,表示其中的任何一项;all则表示其中的所有的项。

5.使用compute和compute by进行汇总查询

*compute子句需要下列信息:
  可选by关键字。它基于每一列计算指定的行聚合。
  行聚合函数名称。包括sum,avg,min,max或count。
  要对其执行行聚合函数的列。

6.排序函数
*语法:排序函数OVER([分组子句]排序字句[DESC|ASC])
*排序函数:
    ROW-NUMBER函数:行数
    RANK函数:存在并列时跳号
    DENSE-PANK:存在并列时不跳号
*分组子句:PARTITION BY 分组列,分组列...
*排序子句:ORDER BY 排序列,排序列...

*公式表达式
我们可以将公用表表达式(CTE)视为临时结果集,在SELECT,INSERT,UPDATE,DELETE或CREATE VIEW语句的执行范围内进行定义.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值