今天碰到一个问题,说在 mysql 里面, 要按周统计, 周的计算,是从 每周一到周日。

简单了写了下

SELECT

WEEK (  date  )

SUM  (  sale  )

FROM

GROUP BY

WEEK(  date  );

发现 默认情况下, 这个 WEEK ( 日期 )  是 每把周日,作为一周的开始。

去查询了一下手册,看到这个 WEEK 函数, 还可以额外再跟一个 参数。

这个参数决定了, 使用星期几,来作为 一周的开始。

以及用什么样的逻辑,来计算 一年里面, 第一周的计算方式。

这个参数的描述如下:

参数值

每周第一天

是星期几

返回值

范围

第一周是怎么计算的?

0

星期天

0-53

遇到本年的第一个星期天开始,是第一周。

前面的计算为第0周。

1

星期一

0-53

假如第一周能超过3天,那么计算为本年的第一周。否则为第0周

可以理解为

如果1月1号~4号是星期一,那么本年第一周开始。(之前的是第零周)

如果1月5号以后是星期一,那么现在开始,是本年的第二周了,之前的是第一周。

2

星期天

1-53

遇到本年的第一个星期天开始,是第一周。

前面的计算为上年度的第5x周。

3

星期一

1-53

假如第一周能超过3天,那么计算为本年的第一周。否则为上年度的第5x周。

可以理解为

如果1月1号~4号是星期一,那么本年第一周开始。(之前的是第5x周)

如果1月5号以后是星期一,那么现在开始,是本年的第二周了,之前的是第一周。

4

星期天

0-53

假如第一周能超过3天,那么计算为本年的第一周。否则为第0周

可以理解为

如果1月1号~4号是星期天,那么本年第一周开始。(之前的是第零周)

如果1月5号以后是星期天,那么现在开始,是本年的第二周了,之前的是第一周。

5

星期一

0-53

遇到本年的第一个星期一开始,是第一周。

前面的计算为第0周。

6

星期天

1-53

假如第一周能超过3天,那么计算为本年的第一周。否则为上年度的第5x周。

可以理解为

如果1月1号~4号是星期天,那么本年第一周开始。(之前的是第5x周)

如果1月5号以后是星期天,那么现在开始,是本年的第二周了,之前的是第一周。

7

星期一

1-53

遇到本年的第一个星期一开始,是第一周。

前面的计算为上年度的第5x周。

mysql yearweek 日期不准_Mysql 中,WEEK 与YEARWEEK函数的参数问题相关推荐

  1. mysql timestamp 差值_MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法(两个日期之间的差值)...

    MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法 在应用时,经常要使用这两个函数TIMESTAMPDIFF和TIMESTAMPADD. 一,TIMESTAMPDIFF 语法: ...

  2. mysql存储过程日期类型_mysql中多种日期类型的格式话---用存储过程实现

    其中三个参数:数据库名,表名,列名 temp_d_name:数据库名 temp_t_name:表名 temp_c_name:列名 CREATE DEFINER=`root`@`localhost` P ...

  3. mysql获取当月最后一天_mysql中获取本月第一天、本月最后一天、上月第一天、上月最后一天

    mysql获取当月最后一天_mysql中获取本月第一天.本月最后一天.上月第一天.上月最后一天等等 转自: https://blog.csdn.net/min996358312/article/det ...

  4. mysql sql 时间比较_mysql中sql语句进行日期比较

    这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table WHERE TO_DAY ...

  5. mysql根据时间回退_MySQL 中的日期时间类型

    日期时间类型中包含以下几种数据类型: 各类型都有具体的取值范围,超出或非法的其他值时,MySQL 会回退到 0.TIMESTAMP 类型是个例外,给它设置一个超出范围的值时,将保存上该类型允许的最大值 ...

  6. mysql 日期相等_mysql中时间比较的实现

    MySql中时间比较的实现 unix_timestamp 函数可以接受一个参数,也可以不使用参数.它的返回值是一个无符号的整数.不使用参数,它返回自1970年1月1日0时0分0秒到现在所经过的秒数,如 ...

  7. mysql时间等于现在_MySQL中的日期时间等于或大于今天

    10 个答案: 答案 0 :(得分:280) SELECT * FROM users WHERE created >= CURDATE(); 但我认为你的意思是created < toda ...

  8. mysql格式化日期成分_MySQL格式化日期

    mysql> select FROM_UNIXTIME(1344887103); +---------------------------+ | FROM_UNIXTIME(1344887103 ...

  9. mysql nextval同步锁_mysql中实现类似oracle中的nextval函数

    我们知道mysql中是不支持sequence的,一般是建表的时间使这个字段自增. 如       create table table_name(id int auto_increment prima ...

最新文章

  1. Linux shell test用法
  2. 如何正确的在一个循环中删除ArrayList中的元素。
  3. html页面通过特殊链接:打电话,发短信,发邮件详细教程
  4. ik分词和jieba分词哪个好_Lucene.net(4.8.0) 学习问题记录五: JIEba分词和Lucene的结合,以及对分词器的思考...
  5. 软件开发模型_20202021企业软件开发流程(5)软件开发过程模型瀑布模型(2)软件设计、编码...
  6. Git--可视化管理工具-SourceTree
  7. 2019美赛备战日记1/18
  8. Android中经纬度与度分秒互转
  9. NC文件数据提取完成(1.16)
  10. html自动跳转页面,HTML实现页面自动跳转的五种方法
  11. Ansys许可重新配置
  12. 易语言清空c盘指令,C盘清理命令
  13. WDS服务--网络安装系统(自动部署装机Windows系统)
  14. VR/AR/MR/CR/XR概念及应用
  15. 虚拟华尔街的最新资讯 虚拟经济体的最新经济体
  16. SQLyog设置唯一
  17. 《卓有成效的管理者》阅读心得
  18. 如何利用C语言生成随机数
  19. 超声波测距,1602显示距离
  20. c语言范例开发大全DVD,C语言程序开发范例宝典(光盘内容另行下载,地址见书封底)...

热门文章

  1. 【转】js frame 框架编程
  2. mysql日期时间函数
  3. 最新全球自由职业技能单日排行
  4. 比特币(包括BTC和BCH)的零确认到底安不安全?
  5. Github上AI在银行和保险的应用列表
  6. java系统高并发解决方案
  7. 小试牛刀之Django
  8. 2008 R2 辅域安装和卸载(加域、退域及组策略的测试)
  9. Tomcat灵活配置多项目,多端口,多域名,多虚拟目录
  10. Apache commons email 使用过程中遇到的问题