Mysql 语法

本文详细介绍了SQL中的窗口函数over()、分区分析(partitionby)与分组分析(groupby)的区别,强调了在join操作中处理空值和使用索引的重要性。同时讨论了如何通过explain优化查询性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.窗口函数:over()

2.分区分析

partition by field1,field2 order by sorted_field1

3.分组分析

group by field1,field2

**:区别:partition by 保留分区所有数据 搭配窗口函数和排名函数进行排序 排名 范围排序等;输出结果为所有数据;

        group by 只保留相同分组字段中第一条数据(注意 如需要按照排序分组,SQL执行数据为group by > order by);sql执行器优化后不会按照order by进行取第一条数据;

需要(子查询 order by ) group by ;)

4.join on table1.field1 = table2.field2 and table1.field3 = table2.field4;如果field字段为空;则关联数据则会丢失;需要使用IF函数判空并给默认值进行关联

5.explain: 关注字段:type index where filter;适当增加索引以及子查询过滤后数据进行关联查询。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值