1、首先可以直接用datepart函数,第一个参数设置成weekday就可以了。
公司主营业务:做网站、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出赤壁免费做网站回馈大家。
2、得到的结果是这一天是这周的第几天,注意星期日是第一天。
3、可以看到去掉星期日就是日期的星期几了。
4、然后在实际使用的时候就可以直接减去1就可以了。
5、另外datepart第二个参数也可以直接放getdate。
6、最后得到的结果也是需要的日期。
select count(id),sum(case when day='星期一' or day='星期二' or day='星期三' or day='星期四' or day='星期五' then 1 else 0 end) 工作日,sum(case when day='星期六' or day='星期日' then 1 else 0 end) 周末 from table
另外:我发现你的表中有重复值啊,这个怎么算,不管么?还是要去重?这张表(我说的是例子)似乎有点问题。
还应该由其他写法,暂时就想起这一种来。
to_char(日期,'D')
比如:
select to_char(sysdate,'D') from dual;
其中周日是1,周一是2 。。。 以此类推