在Mysql中获取给定数据范围内特定月份的周数
我想根据给定日期显示每周用户记录, 假设我给出了日期范围在Mysql中获取给定数据范围内特定月份的周数,mysql,Mysql,我想根据给定日期显示每周用户记录, 假设我给出了日期范围'2014-01-24', 这个日期是哪一周 示例:第1周、第2周、第3周、第4周、 我使用的查询方式是 select weekday(date); 使用WEEK(date[,mode])MySQL提供。有了每月的第几天后,使用除法运算符找出您所在的星期 SELECT WEEK('2014-01-24'); +--------------------+ | WEEK('2014-01-24') | +-------------------
'2014-01-24'
,
这个日期是哪一周
示例:第1周、第2周、第3周、第4周、
我使用的查询方式是
select weekday(date);
使用
WEEK(date[,mode])
MySQL提供。有了每月的第几天后,使用除法运算符找出您所在的星期
SELECT WEEK('2014-01-24');
+--------------------+
| WEEK('2014-01-24') |
+--------------------+
| 3 |
+--------------------+
1 row in set (0.00 sec)
例如:
SELECT DAYOFMONTH('2007-02-22');
将返回22
22 / 7 = 3, so you are in week 3.
编辑:此答案基于查找给定月份的周数。其他答案显示“周”函数,该函数将给出给定年份的周数。此函数返回日期的周数
SELECT WEEK('2014-01-24') as numberofweeks;
此函数用于返回日期的周数。WEEK()的两个参数形式允许您指定一周是从星期日还是星期一开始,以及返回值应在0到53或1到53之间
mysql> SELECT WEEK('2014-01-24');
-> 3
i、 e第3周我做了一些东西,也许这可以帮助你,但周数根据周开始的不同而不同,例如:在巴西,这周从周日开始。看看这是否能解决你的问题
SET @date:='2014-08-31';
SELECT
@first := date_add(
date_add(
LAST_DAY(@date),
interval 1 DAY
),
interval -1 MONTH
) AS first_day,
@date,
-- EXAMPLE 1
WeekofYear(@date),
WeekofYear(@first),
WeekofYear(@date)-(WeekofYear(@first)-1) Num_Week,
-- EXAPLE 2 - Works in Brazil perfectly
Week(@date),
Week(@first),
Week(@date)-(Week(@first)-1) Num_Week_Brazil
'2014-01-24'
是一个日期,不是一个范围。对不起,你的问题是什么?