请教下:上一周是今年的第几周,这周是从几月几号到几月几号,sql 应该如何写
请问下:上一周是今年的第几周,这周是从几月几号到几月几号,sql 应该怎么写
我想在以今天日期为准,上一周是今年的第几周(比如今天是今年的第42周,上一周也就是41 周),这周是从几月几号到几月几号,sql 应该怎么写
------解决方案--------------------
转:
SELECT
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
+ (ROW_NUMBER() OVER (ORDER BY 1) ) DAY AS result
FROM
SYSIBM.SYSCOLUMNS
fetch first 7 rows only;
查询结果:
2013-03-18
2013-03-19
2013-03-20
2013-03-21
2013-03-22
2013-03-23
2013-03-24
注:
DAYOFWEEK 是查询, 日期是当前周的 第几天。 (周日是第一天)
CURRENT_DATE - (DAYOFWEEK(CURRENT_DATE) - 1) DAY
是获取本周的第一天 (也就是 星期天 3月24号)
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
是 获取上周的第一天 (也就是 上周的 星期天 3月17号)
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
+ (ROW_NUMBER() OVER (ORDER BY 1) ) DAY
是 从上周星期天 开始 , 每行数据 + 1天。
也就是从 3月18号是第1行, 3月19号是第2行
fetch first 7 rows only;
是只检索 7行。
我想在以今天日期为准,上一周是今年的第几周(比如今天是今年的第42周,上一周也就是41 周),这周是从几月几号到几月几号,sql 应该怎么写
------解决方案--------------------
转:
SELECT
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
+ (ROW_NUMBER() OVER (ORDER BY 1) ) DAY AS result
FROM
SYSIBM.SYSCOLUMNS
fetch first 7 rows only;
查询结果:
2013-03-18
2013-03-19
2013-03-20
2013-03-21
2013-03-22
2013-03-23
2013-03-24
注:
DAYOFWEEK 是查询, 日期是当前周的 第几天。 (周日是第一天)
CURRENT_DATE - (DAYOFWEEK(CURRENT_DATE) - 1) DAY
是获取本周的第一天 (也就是 星期天 3月24号)
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
是 获取上周的第一天 (也就是 上周的 星期天 3月17号)
CURRENT_DATE -
(DAYOFWEEK(CURRENT_DATE) - 1) DAY
- 7 DAY
+ (ROW_NUMBER() OVER (ORDER BY 1) ) DAY
是 从上周星期天 开始 , 每行数据 + 1天。
也就是从 3月18号是第1行, 3月19号是第2行
fetch first 7 rows only;
是只检索 7行。