利用sql语句来统计用户登录数据的实践

目录

  • 1 基本数据情况
  • 2 统计每个用户每个月登录次数
  • 3 将日期按月显示在列上
  • 4 总结

1 基本数据情况

当需要对用户登录情况进行统计时,SQL是一个非常强大的工具。通过SQL,可以轻松地从数据库中提取和汇总数据,并以适合分析和报告的方式进行呈现。

在这个示例中,我们有一个名为t_login的表,包含了用户登录的记录。字段有id,user,logintime,department,其中logintime是datetime格式,包括了年月日时分秒信息。具体数据如下表。

id用户时间部门
1黑熊怪2021-08-05 17:20:00行政部
2黑熊怪2021-09-22 17:26:00行政部
3黑熊怪2021-09-26 09:55:00行政部
4黑熊怪2021-09-26 10:08:00行政部
5黑熊怪2022-04-13 15:01:00行政部
6唐僧2022-10-24 13:45:00开发部
7唐僧2022-10-24 15:07:00开发部
8唐僧2022-10-26 10:44:00开发部
9唐僧2022-11-07 14:28:00开发部
10唐僧2023-02-24 08:43:00开发部
11唐僧2023-03-07 10:14:00开发部
12悟空2022-12-26 10:33:00开发部
13八戒2022-10-25 11:16:00开发部
14八戒2022-11-13 08:54:00开发部
15白骨精2021-11-22 14:47:00开发部
16沙僧2021-08-18 14:44:00市场部
17沙僧2022-05-07 09:12:00市场部
18沙僧2022-05-11 10:41:00市场部
19沙僧2022-05-11 14:27:00市场部
20白龙马2023-07-12 09:39:00财务部
21白龙马2023-07-13 10:59:00财务部
22白龙马2023-07-19 15:04:00财务部

针对此数据,我们有两种不同的需求:首先是统计每个用户每个月登录的次数,其次是将登录日期按月显示在列上。

2 统计每个用户每个月登录次数

针对这个需求,我们可以按照以下步骤来实现:

  1. 使用GROUP BY语句将数据按照部门、用户、年份和月份进行分组。
  2. 使用COUNT函数统计每个组合中的登录次数。
  3. 最后,按照部门、用户、年份和月份的顺序进行排序。
SELECTdepartment,`user`,DATE_FORMAT(logintime, '%Y-%m') AS `year_month`,COUNT(*) AS count
FROMt_login
GROUP BYdepartment,`user`,`year_month`
ORDER BYdepartment,`user`,`year_month`;

查询结果展示
在这里插入图片描述

3 将日期按月显示在列上

对于第二个需求,我们可以通过将日期作为列名,统计每个用户在每个月的登录次数。这里的查询需要固定年份和月份,并将其转换为列名。

SELECTdepartment,`user`,SUM(CASE WHEN YEAR(logintime) = 2021 AND MONTH(logintime) = 8 THEN 1 ELSE 0 END) AS '2021_8',SUM(CASE WHEN YEAR(logintime) = 2021 AND MONTH(logintime) = 9 THEN 1 ELSE 0 END) AS '2021_9',-- ...类似的逻辑,补充更多的年份和月份SUM(CASE WHEN YEAR(logintime) = 2023 AND MONTH(logintime) = 7 THEN 1 ELSE 0 END) AS '2023_7'
FROMt_login
WHERE(logintime >= '2021-08-01' AND logintime < '2023-12-01')
GROUP BYdepartment,`user`
ORDER BYdepartment,`user`;

查询结果如下

在这里插入图片描述

这两个示例SQL语句提供了满足两种需求的查询方法,并且可以用于导出数据并进一步分析或生成报告。

4 总结

本博客简要描述问题,说明针对用户登录情况的统计需求。 解释如何使用GROUP BYCOUNT函数统计每个用户每个月的登录次数,并提供相应的SQL语句。说明如何将日期按月显示在列上,展示每个用户在每个月的登录情况,并给出相应的SQL查询语句。结果展示和导出数据。提供示例查询结果,说明如何将数据导出到Excel或其他工具中进行分析。总结SQL的强大之处,指出其在数据统计和分析中的应用,并展望如何进一步优化和扩展这些查询以适应更多的需求场景。通过这样的博客结构,读者可以了解到在实际场景中使用SQL进行数据统计和分析的方法,并且能够根据不同需求调整查询,满足自身的数据处理要求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/229481.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电子签名软件,在教育行业中如何应用?

电子签名软件简化签署流程&#xff0c;降低签署门槛&#xff0c;让更多人便捷地参与到签署中来。 微签作为国内电子签名软件的拓荒者之一&#xff0c;拥有19年的研发应用经验&#xff0c;提供专业的企业电子签名服务。微签的电子签名软件广泛应用于审批场景&#xff0c;实现高…

嵌入式总线技术详解

1. 总线概述 1.1 总线定义 总线&#xff08;Bus&#xff09;是计算机各种功能部件之间传送信息的公共通信干线它是由导线组成的传输线束&#xff0c;按照计算机所传输的信息种类&#xff0c;计算机的总线可以划分为数据总线、地址总线和控制总线&#xff0c;分别用来传输数据…

人工智能与供应链行业融合:预测算法的通用化与实战化

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 让我们一起深入探索人工智能与供应链的融合&#xff0c;以及预测算法在实际应用中的价值&#xff01;&#x1f50d;&#x1f680; 文章目录 前言供应链预测算法的基本流程统计学习模型与机…

冲刺高端,OPPO不太OK?

所有人都知道OPPO有一个高端梦&#xff0c;而折叠屏似乎就是其弯道超车实现高端化的关键所在。然而如今看来&#xff0c;折叠屏手机在市场的表现似乎并没有成为主流&#xff0c;这或许也意味着OPPO距离自己的高端梦似乎还有些距离。 更高端&#xff0c;往往意味着更多的利润和价…

广州华锐视点:基于VR元宇宙技术开展法律法规常识在线教学,打破地域和时间限制

随着科技的飞速发展&#xff0c;人类社会正逐渐迈向一个全新的时代——元宇宙。元宇宙是一个虚拟的、数字化的世界&#xff0c;它将现实世界与数字世界紧密相连&#xff0c;为人们提供了一个全新的交流、学习和娱乐平台。在这个充满无限可能的元宇宙中&#xff0c;法律知识同样…

【小黑嵌入式系统第十课】μC/OS-III概况——实时操作系统的特点、基本概念(内核任务中断)、与硬件的关系实现

文章目录 一、为什么要学习μC/OS-III二、嵌入式操作系统的发展历史三、实时操作系统的特点四、基本概念1. 前后台系统2. 操作系统3. 实时操作系统&#xff08;RTOS&#xff09;4. 内核5. 任务6. 任务优先级7. 任务切换8. 调度9. 非抢占式&#xff08;合作式&#xff09;内核10…

从 0 到 1 开发一个 node 命令行工具

G2 5.0 推出了服务端渲染的能力&#xff0c;为了让开发者更快捷得使用这部分能力&#xff0c;最写了一个 node 命令行工具 g2-ssr-node&#xff1a;用于把 G2 的 spec 转换成 png、jpeg 或者 pdf 等。基本的使用如下&#xff1a; $ g2-ssr-node g2png -i ./bar.json -o ./bar.…

水库大坝安全在线监测系统守护水利工程的坚实屏障

随着科技的发展&#xff0c;水库大坝的安全监测已经进入了一个全新的时代。过去&#xff0c;我们无法实时监测大坝的安全状况&#xff0c;只能在灾难发生后进行补救&#xff0c;现在&#xff0c;通过WX-DB1水库大坝安全在线监测系统&#xff0c;我们能够在第一时间掌握大坝的运…

随笔(持续更新)

随笔&#xff08;持续更新&#xff09; 1、某个网络有没有连通 要获取某个网站的ip地址&#xff0c;可以通过ping它的域名就可以得到IP地址 例如&#xff1a;我想获取百度的ip地址&#xff08;Windows环境&#xff09; C:\Users\tq>ping www.baidu.com正在 Ping www.a.s…

代码随想录算法训练营第四十九天【动态规划part10】 | 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II

121. 买卖股票的最佳时机 题目链接&#xff1a; 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 求解思路&#xff1a; 动规五部曲 确定dp数组及其下标含义&#xff1a;使用一个二维数组dp[i][2]&#xff0c;dp[i][0]代表持有股票的最大收益&…

ZYNQ_project:IIC_EEPROM

EEPROM简介&#xff1a; EEPROM(Electrically Erasable Progammable Read Only Memory&#xff0c; E2PROM)是指带电可擦可编程只读存储器&#xff0c;是一种常用的非易失性存储器&#xff08;掉电数据不丢失&#xff09;&#xff0c; E2PROM 有多种类型的产品&#xff0c;我们…

深入理解强化学习——马尔可夫决策过程:备份图(Backup Diagram)

分类目录&#xff1a;《深入理解强化学习》总目录 在本文中&#xff0c;我们将介绍备份&#xff08;Backup&#xff09;的概念。备份类似于自举之间的迭代关系&#xff0c;对于某一个状态&#xff0c;它的当前价值是与它的未来价值线性相关的。 我们将与下图类似的图称为备份图…