sql-server-2008 – SQL Server返回意外的周数
发布时间:2020-05-24 16:27:59 所属栏目:MsSql 来源:互联网
导读:我在表中有一些订单,2011年的最后订单日期是12月20日. 我正在使用sql命令来计算给定周内的订单数量: SELECT CONVERT(VARCHAR(3),DATENAME(week,convert(datetime,order_date,103))) AS week, COUNT(1) as orders FROM order_table where DATENAME(YEAR,
|
我在表中有一些订单,2011年的最后订单日期是12月20日. 我正在使用sql命令来计算给定周内的订单数量: SELECT CONVERT(VARCHAR(3),DATENAME(week,convert(datetime,order_date,103))) AS week,COUNT(1) as orders FROM order_table where DATENAME(YEAR,103)) = '2011' GROUP BY CONVERT(VARCHAR(3),103))) order by week asc 它返回了以下一些结果: Week | Orders 41 | 42 42 | 110 43 | 115 ... ... 51 | 155 52 | 15 这样做的问题在于,我提到的2011年最后一个订单日期是2011年12月20日,不能是52周,所以必须是第51周. 我有一些其他的统计数据(关闭另一个系统,而不是SQL服务器),它给了我一些其他的数据,上一周是51,我毫无疑问是正确的.如果人们都在寻找两者,那么将会有一个问题! 任何人都有任何想法或知道如何排序这个? 谢谢, 解决方法2011年12月20日的iso_week是51.所以也许这就是你所需要的.SELECT datepart(iso_week,'2011-12-20') (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 显示 Sql Server 中所有表中的信息
- sql-server – 基于SQL Server的EAV
- sql-server – ALLOW_SNAPSHOT_ISOLATION和READ_COMMITTED_
- sql-server – SQL存储过程是否区分大小写?
- mysql表的清空、删除和修改操作详解
- SQL查询匹配列表中的所有值以进行评估
- sql-server – 在SQL Server数据库中重建索引的频率是多少?
- SQL Server 数据库更新脚本用法
- sql-server – SQL Server 2000中可用的魔术表是什么?
- SQL Server 判断字段是否被更新 新旧数据写入Audit Log表中
