mysql--统计每个用户的累计访问次数

摘要:
createtableaction(userIdVARCHAR(10),visitDateVARCHAR(10),visitCountint);insertintoactionvalues('u01','2017/1/21',5),('u02','2017/1/23',6),('u03','2017/1/22',8),('u04','2017/1/20',3),('u01','2017/1/23'

create table action(
userId VARCHAR(10),
visitDate VARCHAR(10),
visitCount int );

insert into action values
('u01','2017/1/21',5),
('u02','2017/1/23',6),
('u03','2017/1/22',8),
('u04','2017/1/20',3),
('u01','2017/1/23',6),
('u01','2017/2/21',8),
('u02','2017/1/23',6),
('u01','2017/2/22',4);
--统计每个用户的累计访问次数

1 SELECT tab.users '用户',tab.date '日期',tab.su '小计',sum(tab.su) over(partition by tab.users ORDER BY tab.date)'合计'
2 from(
3 SELECT userId users,date_format(regexp_replace(visitDate,'/','-'),'%Y-%m') date,sum(visitCount) su
4 FROMaction
5 GROUP BYuserId,date
6 ORDER BYuserId,date
7 )tab
8 GROUP BY tab.users,tab.date

注:这里用到over函数--

免责声明:文章转载自《mysql--统计每个用户的累计访问次数》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇获取JSON中所有的KEYflask-apscheduler重复执行两次函数下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MySQL5.6 新特性之GTID

1.mysql5.6在复制方面的新特性: (1).支持多线程复制:事实上是针对每个database开启相应的独立线程,即每个库有一个单独的(sql thread).针对这样的改进,如果我们想实现多线程复制,无疑要对现存的数据库结构进行重新设计,分库分表.对于压力都集中在个别database的,多线程并发复制特性就没有意义. (2).支持启用GTID,在配置...

mysql编码修改

一、查看character_set 变量 show variables like '%character%'; 二、对8个变量解释(mysql5.7,不同版本存在有的变量名没有) 变量名 解释 character_set_client 主要用来设置客户端使用的字符集。 character_set_connection 主要用来设置连接数据库时的字符集...

MySQL日期数据类型、时间类型使用总结

MySQL 日期类型:日期格式、所占存储空间、日期范围 比较。 日期类型        存储空间       日期格式                 日期范围 ------------ ---------   --------------------- ----------------------------------------- datetime ...

mysql复制表和表结构

一、CREATE TABLE 方法 整表复制 # create table 新表 select * from 旧表;结构复制 # create table 新表 select * from 旧表 where 1<>1; 二、INSERT INTO 方法 得到建表语句 # show create table 旧表;新建表复制数据到新表 #...

mysql 树形数据,层级数据Managing Hierarchical Data in MySQL

原文:http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/ 引言大多数用户都曾在数据库中处理过分层数据(hierarchical data),认为分层数据的管理不是关系数据库的目的。之所以这么认为,是因为关系数据库中的表没有层次关系,只是简单的平面化的列表;而分层数据具有父...

SQL Server 行转列重温

转载自http://www.cnblogs.com/kerrycode/ 行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 2005 新增的运算符PIVOT来实现。用传统的方法,比较好理解。层次清晰,而且比较习惯。 但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SE...