DB2 数据日期字段为varchar字段想取出月份进行比较
DB2数据库日期字段为varchar值为2013/01/01想取出月份简单的说想取出月份进行比较取出1-3月,3-6月,6-9月,9-12月份的数据DATEDIFF这个函...
DB2 数据库日期字段为varchar 值为2013/01/01想取出月份 简单的说想取出月份进行比较取出1-3月,3-6月,6-9月,9-12月份的数据 DATEDIFF这个函数我用不了不知道是什么原因,求大神解答。。。
展开
2个回答
2014-01-16
展开全部
首先, 你可以先使用 TO_DATE 函数, 把 varchar 类型的数据, 转换为 日期类型的。
例如:
db2 => SELECT
db2 (cont.) => TO_DATE('2011.10.01', 'YYYY.MM.DD')
db2 (cont.) => FROM SYSIBM.SYSDUMMY1;
1
--------------------------
2011-10-01-00.00.00.000000
1 条记录已选择。
然后, 使用 MONTH ( 上一步骤取得的 日期类型的数据 ) 来获取 具体的 月的数值。
展开全部
with t1(m, d) as (
select '2013/01/13', 10000 from sysibm.sysdummy1
union all select '2013/01/03', 5000 from sysibm.sysdummy1
union all select '2013/02/03', 5000 from sysibm.sysdummy1
union all select '2013/04/03', 5000 from sysibm.sysdummy1
union all select '2013/11/03', 5000 from sysibm.sysdummy1
),
t2(m,d) as (
select case when substr(m,6,2) in ('01','02','03') then '1-3月'
when substr(m,6,2) in ('04','05','06') then '4-6月'
when substr(m,6,2) in ('07','08','09') then '7-9月'
else '10-12月'
end, d
from t1
)
select m, sum(d)
from t2
group by m
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询