T-SQL 高级查询

1、嵌套子查询

优点:使用灵活,可以成为SQL语句的的多个部分。

子查询作为查询条件使用

子查询作为临时表使用

子查询作为列使用

降低SQL的语句的复杂度,提高SQL语句的可读性

2、IN和NOT IN

IN和NOT IN 通常在WHERE子句中使用,在IN 和NOT IN后接的子查询中,可以有多个值出现,但必须只能有一列

3、EXISTS 和 NOT EXISTS

EXISTS 和 NOT EXISTS 表示存在和不存在的意思 在语句中会判断 EXISTS 和 NOT EXISTS 后接的子句是否存在和是否不存在

NOT EXISTS 和 EXISTS 一样 唯一的区别就是意义相反。

4、 some any  all

在SQL查询中 some和any 的作用是一样的 表示其中的任何一项 比如 大于其中做小的  all 则表示 所有的项 表示大于其中最大的。

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

使用了compute进行汇总计算后的查询结果得到了两个结果集,第一个结果集反回查询语句前面的查询明细,后一个结果集反回汇总的结果,也可以在compute子句中添加多个对总计算表达式

  • 可选by 关键字 他基于每一列计算的进行聚合
  • 行聚合函数名称 sum avg  max min 或 count
  • 要对其执行行聚合函数的列

6、排序函数

语法: OVER(【分组子句】排序子句【DESC|ASC】)

  • ROW_NUMBER 根据排序子句给出递增连续的序号。
  • RANK  根据排序子句给出递增的序号 遇到相同的结果是序号相同 但是存在调好。
  • DENSE_RANK 根据排序子句给出递增的序号 遇到相同的结果是序号相同 不太哦好。

 

 

    原文作者:SQL
    原文地址: https://blog.csdn.net/XY10060521/article/details/82499928
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞