最近公司要统计一年内每周的注册用户数,销售量,成交量。分享一下在开发是遇到的问题。如果文章中有错误的地方尽请见谅
1 mySql 周数统计 (week函数)
首先说一下mysql数据库统计使用week(Str/date,number) 第一个参数是字符串或者日期,第二个参数是数字
接下来我介绍一下week函数使用的示例
select week(‘2015-11-17’,1) 2015年11月17号在改年中是第47周
其中week函数中的第二个参数number的值得用法
Number | 一周的第一天 | 范围 | Week 1为第一周 |
0 | 周日 | 0~53 | 本年度中有一个周日 |
1 | 周一 | 0~53 | 本年度中有3天以上 |
2 | 周日 | 1~53 | 本年度中有一个周日 |
3 | 周一 | 1~53 | 本年度中有3天以上 |
4 | 周日 | 0~53 | 本年度中有3天以上 |
5 | 周一 | 0~53 | 本年度中有一个周一 |
6 | 周日 | 1~53 | 本年度中有3天以上 |
7 | 周一 | 1~53 | 本年度中有一个周一 |
WEEK('2015-11-17')只使用一个参数,它的第二个参数则为default_week_format默认值,MySQL中该值默认为 0
下面是开发过程中统计每周注册用户的数量使用的sql
其中post_date是注册时间的字段
SELECT WEEK(u.post_date,1),COUNT(*)
FROM USERS u WHERE 1=1
AND u.post_date>='2015-01-01'
AND u.post_date<='2015-12-31'
GROUP BY WEEK(u.post_date,1)
注意:week的参数使用1 符合我们正常的周数的显示
Mysql还有一个WEEKOFYEAR(d) 的函数
一年中的第几个星期。范围是从1~53,相当于WEEK(d,3)。
但是针对于一些特殊的他会有一些问题例如查询2014年的12月31号用weekofyear他会把当天看成是2015年的第一周
在开发中建议使用week(str/date,1) 这个符合我们国家的周数统计
本文发布于:2024-01-31 07:09:04,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170665614526520.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |