oracle问题,请教大家,我想要取一个日期区间内的所有周一,二。。。周日,sql怎么下

例如,日期区间2013/01/18到2013/02/09,这之间包含了3个星期一,3个星期二,3个星期三,3个星期四,4个星期五,4个星期六,3个星期日,sql该怎么下呢... 例如,日期区间2013/01/18到2013/02/09,这之间包含了3个星期一,3个星期二,3个星期三,3个星期四,4个星期五,4个星期六,3个星期日,sql该怎么下呢,没有idea,有想过要写成一个function,希望大家有写过或是知道怎么写的能告诉我下,最好有sql
我不只需要知道有几个星期几,我还想要取出分别是哪几天
展开
 我来答
kacaka000
2013-01-18
知道答主
回答量:10
采纳率:0%
帮助的人:6.4万
展开全部
select b.day,b.dd,sum(b.flag) over(partition by b.dd) as dd_sum
from
(select a.day,to_char(a.day,'day') as dd, 1 as flag
from
(SELECT TO_DATE('20130118', 'YYYY-MM-DD') + LEVEL - 1 DAY
FROM DUAL
CONNECT BY TO_DATE('20130118', 'YYYY-MM-DD') + LEVEL - 1 <=
TO_DATE('20130209', 'YYYY-MM-DD')
) a
) b
group by b.day
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
在唯的P
2013-01-18 · TA获得超过406个赞
知道答主
回答量:40
采纳率:0%
帮助的人:32.6万
展开全部
datepart(dw,'2013/01/18') -1 可以得到一个日期对应的星期几,其中周日返回的结果是0,
把返回的结果放到一个集合中,累加有几个对应的星期1,2,3.....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式