网站流量日志分析--统计分析--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实时生图绘板
相关文章
|
10月前
|
SQL 传感器 人工智能
生成更智能,调试更轻松,SLS SQL Copilot 焕新登场!
阿里云日志服务(SLS)推出智能分析助手 SLS SQL Copilot,融合 AI 技术与日志分析最佳实践,将自然语言转换为 SQL 查询,降低使用门槛,提升查询效率。其具备原生集成、智能语义理解与高效执行能力,助力用户快速洞察日志数据价值,实现智能化日志分析新体验。
665 1
|
10月前
|
SQL 传感器 人工智能
生成更智能,调试更轻松,SLS SQL Copilot 焕新登场!
本文是阿里云日志服务(SLS)首次对外系统性地揭秘 SLS SQL Copilot 背后的产品理念、架构设计与核心技术积淀。我们将带你深入了解,这一智能分析助手如何从用户真实需求出发,融合前沿 AI 能力与 SLS 十余年日志分析最佳实践,打造出面向未来的智能化日志分析体验。
805 63
|
9月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
441 6
|
弹性计算 运维 网络安全
阿里云轻量应用服务器产品解析与搭建个人博客网站教程参考
轻量应用服务器(Simple Application Server)作为阿里云面向单机应用场景推出的云服务器产品,以其一键部署、一站式管理、高性价比等特性,深受个人开发者、中小企业及入门级用户的喜爱。本文将全面解析阿里云轻量应用服务器的产品优势、应用场景、使用须知,以及使用轻量应用服务器搭建个人博客网站的详细教程,帮助用户更好地了解和使用这一产品。
|
SQL 存储 缓存
MySQL进阶突击系列(02)一条更新SQL执行过程 | 讲透undoLog、redoLog、binLog日志三宝
本文详细介绍了MySQL中update SQL执行过程涉及的undoLog、redoLog和binLog三种日志的作用及其工作原理,包括它们如何确保数据的一致性和完整性,以及在事务提交过程中各自的角色。同时,文章还探讨了这些日志在故障恢复中的重要性,强调了合理配置相关参数对于提高系统稳定性的必要性。
|
监控 前端开发 安全
如何开发一个网站:全面解析与实战指南
在数字化时代,网站是企业和个人展示形象、传播信息的关键平台。本文提供从规划、设计、开发、上线到后期维护的全方位网站开发指南,涵盖明确目标、分析用户、设定功能需求、设计风格、技术选型、测试部署及优化升级等内容,帮助你打造既美观又实用的网站。
1380 4
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
5136 32
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
642 9
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1410 55

推荐镜像

更多
  • DNS