## SQL中的集合操作符IN、EXCEPT、INTERSECT和UNION的用法
①IN——确定给定的值是否与子查询或列表中的值相匹配,选择与列表中的任意一个值匹配的行
②EXCEPT,指在第一个集合中存在,但是不存在于第二个集合中的数据,
③INTERSECT,是指在两个集合中都存在的数据
④UNION,操作符用于合并两个或多个SELECT语句的结果集,对于UNION操作符,请注意,UNION内部的 SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。
同时,每条 SELECT语句中的列的顺序必须相同。
## 集合运算
**并集union、交集intersect、差集except**
## case语句
Case
When Grade between 90 and 100 THEN '优'
When Grade between 80 and 89 THEN '良'
When Grade between 70 and 79 THEN '中'
When Grade between 60 and 69 THEN '及格’
else '不及格'
End
## COUNTO函数和SUMO)函数的使用
COUNTO()函数——用于统计元组的个数或者某个字段中值的个数
SUM()——则用来计算某个字段值的总和
## 最大值查询
MAX()函数——在数据库中,MAX()函数用于从一个集合中获取最大值。该函数非常灵活,可以用于各种数值类型的字段,包括整数、浮点数和日期/时间类型的字段
![](https://img.kancloud.cn/e3/27/e3275dcfc207f02c3d6243f4c245fdbc_1285x717.png)
## 连接查询
INNER(INNER可省略)
JOIN...IN——语法格式:需要连接的表1 JOIN需要连接的表2 ON连接的条件。
## OVER
OVER是用于与窗口函数(Window Function)一起使用的关键字,在数据库中经常用于对分组数据进行排序、分析和处理等操作。
## OVER关键字通常包括以下两个子句:
1. PARTITION BY:按照指定的列或表达式将查询结果进行分区,使每个分区内部的数据独立处理。
2. ORDER BY:按照指定的列或表达式对每个分区进行排序。
例如,以下语句将根据用户类型和日期分区,并在每个分区内按照日期从早到晚排序,然后给出每个分区的行数和行编号:
~~~
SELECT
user_type,
order_date,
COUNT(*) OVER(PARTITION BY user_type, order_date ORDER BY order_date) AS row_count,
ROW_NUMBER() OVER(PARTITION BY user_type, order_date ORDER BY order_date) AS row_number
FROM orders;
~~~
在上面的示例中,PARTITION BY子句将数据分为多个分区,ORDER BY子句在每个分区内对数据进行排序。OVER关键字可以与其他窗口函数一起使用,如SUM、AVG、MAX、MIN、NTILE等,以进行更加复杂的分析和汇总操作。
- 知识总览
- 别人的笔记
- 基本概念
- 视图
- 基准程序
- 码、主码、主键等
- 索引
- 聚集索引
- 非聚集索引
- 稠密索引
- 稀疏索引
- 唯一索引
- 索引视图
- 其他索引
- 函数依赖
- 事务
- ACID
- 两段、三段锁协议
- 事务-基本表交叉引用矩阵
- 文件组织
- 项目规划
- UML
- 作图
- 其他图
- UML简介
- 需求分析
- 功能建模方法
- DFD
- IDEFO
- 系统设计
- 概念设计
- E-R图
- 依赖与范式
- 范式详解
- IDEF1X
- 系统总体设计
- 逻辑设计
- 关系模式
- 事务概要设计
- 物理设计
- 数据分布设计任务
- 事务详细设计
- 实现与部署
- 运行与维护和优化
- 索引优化
- 分表
- 分库
- Agent
- 监控分析
- 数据库优化
- 日常维护
- 数据库重组和重构
- 硬盘RAID模式
- 数据库系统(DBS)
- 三级模式 两级映像
- 功能角度—4层次
- 性能相关
- 安全设计
- 完整性定义和约束
- B/S与C/S
- 锁
- 常见7种锁
- 个人问题总结
- 自增ID与UUID
- 常用函数
- 个人编写SQL
- 自己写游标
- 自己创建数据库
- 数据查询语言
- 基础知识
- 数据类型
- MySQL数据类型
- 常考数据类型详解
- 分页查询
- 联表查询
- 子查询
- 标量函数
- 内置函数
- 自定义函数
- 临时表
- 约束
- 模糊查询
- Group By查询
- 排名函数
- 窗口函数
- with ties(WITH TIES)
- 数据库对象
- 索引使用
- 数据库文件
- 数据库架构
- 系统数据库
- master数据库
- tempdbl临时数据库
- model数据库
- msdb数据库
- resource数据库
- 分类与附加数据库
- 分区函数
- 分区方案
- 数据库后台编程
- 存储过程
- delimiter
- 触发器
- 各类触发器
- 游标
- 使用游标
- 安全管理
- 用户权限
- 内置的数据库用户
- 存取控制
- 四类安全级别
- 故障管理
- 事务故障
- 故障恢复
- 数据库镜像
- 检查点技术
- 数据转储(备份)
- 日志文件
- 双机存储架构
- 数据库恢复
- 三种恢复模式
- 恢复顺序
- 备份设备
- 大规模数据库架构
- 数据分配
- 分布透明性
- 并行数据库系统
- XML数据库
- 云计算
- 三种模式
- big table
- 数据分片
- 数据仓库与数据挖掘
- 数据仓库
- OSD体系
- 四大特点
- 数据挖掘
- 元数据
- 快照
- OLAP和OLTP
- OSD
- 分类算法
- 聚类算法
- 多维数据分析
- 数据维护策略
- 机器学习模型
- 各种函数写法
- 函数例子(标量,表值)
- 存储过程
- 分区函数-分区方案-分区表
- 触发器