网站流量日志分析--统计分析--sql补充扩展--group by 语法限制解析|学习笔记

简介: 快速学习网站流量日志分析--统计分析--sql补充扩展--group by 语法限制解析

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第四阶段)网站流量日志分析--统计分析--sql补充扩展--group by 语法限制解析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/696/detail/12229


网站流量日志分析--统计分析--sql补充扩展--group by 语法限制解析


1、group by

group by 字段有两个要求出现在表达式中字段要么是分组的字段,要么是被聚合函数包围应用的字段。

2、表有两个字段一个是姓名一个是城市表名字是 t_user(name,city)。

name

city

allen

beijing

tom

shanghai

kobe

beijing

james

beijing

anna

shanghai

 

3、需求统计每个城市的人有多少

select count (name) from t_ user group by city;确定关键字统计

sql 执行时底层是根据城市分组北京是一个分组上海来自于另外一个分组

allen

beijing

kobe

beijing

james

beijing


tom

shanghai

anna

shanghai

count 表达式应用于各个组内针对于第一组反回3条记录针对于第二组返回2条记录最终反馈两个数字一个是3,一个是2,三个人和两个人分别是哪个城市city 是分组的字段不会报错

Select city, count (name) from t_user group by city;

出现在表达式中字段要么是分组的字段,要么是被聚合函数作用包围的字段。

allen

beijing

kobe

beijing

james

beijing

 

tom

shanghai

anna

shanghai

还是分为两组city, count (name) 表达式应用每个分组中不会出现歧义返回的结果是 beijing3,shanghai2,显示人数和 city 名

4、需求还想看一下每个城市的具体的人是谁叫什么名字

Select name, count (name) from t_user group by city;

如果输入 name就会报非法引用的错误name 引用不合法

把数据分为两个组每个组内得到三个表达式不能将 name 字段多个聚在一起写name 不是分组字段就会发生歧义如果是分组字段相同的才会来到同一分组根据 city 分组是北京的才会进入一个组根据名字分组不是相同的名字属于不同的组消除歧义聚合函数指的是输入多行输出一行的函数不管输入几行被聚合函数应用完之后输出一行就可以消除歧义比如针对 name 做 count 统计不管有几行用聚合函数就会返回一行也可以消除歧义不可能在一个表达式中出现不同的结果在 name 中显示不同的东西这是歧义因此 group by 才有这样的语法规则要不然把它放在分组中保证分组一样要不然被聚合函数应用是否放在分组中要结合具体的环境具体的业务确定它的出现是否会改变分组的结果这就是 group by 的限制和具体的解释

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
3月前
|
SQL 传感器 人工智能
生成更智能,调试更轻松,SLS SQL Copilot 焕新登场!
阿里云日志服务(SLS)推出智能分析助手 SLS SQL Copilot,融合 AI 技术与日志分析最佳实践,将自然语言转换为 SQL 查询,降低使用门槛,提升查询效率。其具备原生集成、智能语义理解与高效执行能力,助力用户快速洞察日志数据价值,实现智能化日志分析新体验。
245 1
|
3月前
|
SQL 传感器 人工智能
生成更智能,调试更轻松,SLS SQL Copilot 焕新登场!
本文是阿里云日志服务(SLS)首次对外系统性地揭秘 SLS SQL Copilot 背后的产品理念、架构设计与核心技术积淀。我们将带你深入了解,这一智能分析助手如何从用户真实需求出发,融合前沿 AI 能力与 SLS 十余年日志分析最佳实践,打造出面向未来的智能化日志分析体验。
341 32
|
2月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
215 6
|
9月前
|
人工智能 运维 监控
一招高效解析 Access Log,轻松应对泼天流量
一招高效解析 Access Log,轻松应对泼天流量
174 0
一招高效解析 Access Log,轻松应对泼天流量
|
11月前
|
SQL Java 数据库连接
如何在 Java 代码中使用 JSqlParser 解析复杂的 SQL 语句?
大家好,我是 V 哥。JSqlParser 是一个用于解析 SQL 语句的 Java 库,可将 SQL 解析为 Java 对象树,支持多种 SQL 类型(如 `SELECT`、`INSERT` 等)。它适用于 SQL 分析、修改、生成和验证等场景。通过 Maven 或 Gradle 安装后,可以方便地在 Java 代码中使用。
3575 11
|
SQL 存储 缓存
MySQL进阶突击系列(02)一条更新SQL执行过程 | 讲透undoLog、redoLog、binLog日志三宝
本文详细介绍了MySQL中update SQL执行过程涉及的undoLog、redoLog和binLog三种日志的作用及其工作原理,包括它们如何确保数据的一致性和完整性,以及在事务提交过程中各自的角色。同时,文章还探讨了这些日志在故障恢复中的重要性,强调了合理配置相关参数对于提高系统稳定性的必要性。
|
SQL Java 数据库连接
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
canal-starter 监听解析 storeValue 不一样,同样的sql 一个在mybatis执行 一个在数据库操作,导致解析不出正确对象
|
9月前
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
918 29
|
9月前
|
前端开发 数据安全/隐私保护 CDN
二次元聚合短视频解析去水印系统源码
二次元聚合短视频解析去水印系统源码
391 4

热门文章

最新文章

推荐镜像

更多
  • DNS