sql 查询的时候按月汇总显示数据 10

比如我查2013年1月到12月的我想要得到1月多少汇总2月多少汇总,注意我的月份不是1-31号的是从每月的21日开始到下月的20日结束(比如2013年的2月份就是2013... 比如 我查2013年1月到12月的 我想要得到1月多少汇总2月多少汇总,
注意 我的月份不是1-31号的 是从每月的21日开始到下月的20日结束(比如2013年的2月份就是2013-1-21 到 2013-2-20)
展开
 我来答
helly84
2014-07-15 · TA获得超过329个赞
知道小有建树答主
回答量:737
采纳率:77%
帮助的人:368万
展开全部
使用case when

case when xx between '2012/12/21' and '2013/1/20' then ’1月‘
...
when xx between '2013/11/21' and '2013/12/20' then ’12月‘
end as 月份

作为子查询,外面group by 一下
追问
我是根据开始时间到结束时间   来写sql      开始时间和结束时间都是外面输入传进来的   
这么写的话格式固定柱了呀
时间=CONVERT(varchar(7), 时间, 120) 能不能自己定义一个函数把CONVERT换成取值是本月21-下月20的
追答
你可以用固定的啊
用年来拼啊。
传参数进来。
case when xx between 年 -1 + '12/21' and 年+'01/20' then 年+‘年01月'

PS:
你开始时间21号是固定的。但是你想中间的月自己累加?还是想怎么着。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式