
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) 展开
注意 我的月份不是1-31号的 是从每月的21日开始到下月的20日结束(比如2013年的2月份就是2013-1-21 到 2013-2-20) 展开
1个回答
展开全部
使用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 一下
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号是固定的。但是你想中间的月自己累加?还是想怎么着。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询