【如何查看2014年第12周,是几号到几号】

o_public 2015-04-13 07:45:13
SELECT DATE_FORMAT(u.createtime,'%Y第%u周') weeks,COUNT(u.user_id) COUNT FROM user u GROUP BY weeks;


...全文
205 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zbdzjx 2015-04-17
  • 打赏
  • 举报
回复
引用 8 楼 o_public 的回复:
[quote=引用 7 楼 zbdzjx 的回复:]
select dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 0), dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 6)
这个是周一到周日的,如果要看周日到周六的,两个字段都减1。 要查第几周,就将上面的12改成相应的周数。
我发错了,我需要mysql的语句。[/quote] 语句可以稍改一下。 计算方式:如果要第12周的日期,就用2014/01/01加上(12-1)*7这些天,然后再计算出这天所在周的第一天和最后一天。 增加几天、所在周的第一天、所在周的最后一天,这三段语句我在网上搜了搜,都有例子。
o_public 2015-04-17
  • 打赏
  • 举报
回复
引用 7 楼 zbdzjx 的回复:
select dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 0), dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 6)
这个是周一到周日的,如果要看周日到周六的,两个字段都减1。 要查第几周,就将上面的12改成相应的周数。
我发错了,我需要mysql的语句。
zbdzjx 2015-04-14
  • 打赏
  • 举报
回复
select dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 0), dateadd(wk, datediff(wk,0,convert(datetime,'2014/01/01')+(12-1)*7), 6)
这个是周一到周日的,如果要看周日到周六的,两个字段都减1。 要查第几周,就将上面的12改成相应的周数。
Tiger_Zhao 2015-04-14
  • 打赏
  • 举报
回复
#5: 用DATE_FORMAT()的怎么会是SQL Server?贴代码没用的啦。
Mr_Nice 2015-04-14
  • 打赏
  • 举报
回复
  
  ;WITH TT
  AS(  
  SELECT    DATEADD(dd, number, '2014-01-01') AS dd
  FROM      master..spt_values
  WHERE     type = 'P')
  
  
  SELECT MIN(dd) AS 起始日期 ,MAX(dd) AS 终止日期 from TT WHERE DATEPART(wk,dd)=12 AND YEAR(dd)=2014
  
/*起始日期	终止日期
2014-03-16 00:00:00.000	2014-03-22 00:00:00.000*/
o_public 2015-04-14
  • 打赏
  • 举报
回复
大神还是有的
Tiger_Zhao 2015-04-14
  • 打赏
  • 举报
回复
你先做个日历表(日期,年,周),把全年的日期都填进去。
然后按年、周分组,MIN(日期)、MAX(日期)就是该周的日期范围。
SQL77 2015-04-13
  • 打赏
  • 举报
回复
只能通过时间函数计算。WEEK() ,DATE_ADD()
o_public 2015-04-13
  • 打赏
  • 举报
回复
我如何知道第21周,是几号到几号呢?

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧