oracle分析函数lag/lead不能计算日期型数据?
来源:互联网 发布:网络监控vlan划分 编辑:程序博客网 时间:2024/05/16 08:12
一个表中包含日期型字段,使用lag或lead函数时,若lag/lead的第一个参数为日期型字段,会报错“ORA-00932:不一致的数据类型:要求DATE 得到的却是 NUMBER”。百思不得其解,将日期型字段用to_char换成字符串后,再调用没有问题(若要得到日期再用to_date转化,代码上稍微麻烦一点)
测试用例:
SELECT seq
,t.mydate
--,lag(t.mydate, 1, 0) over (ORDER BY mydate)
--,lead(t.mydate, 1, 0) over (ORDER BY t.seq) -- 报错ORA-00932
,lead(to_char(t.mydate, 'yyyy-mm-dd')) over (ORDER BY t.mydate ASC) -- 执行正确
FROM
(
SELECT ROWNUM seq, (to_date('1900-01-01', 'yyyy-mm-dd') + ROWNUM) mydate -- 开始日期加上N天
FROM ALL_OBJECTS
WHERE 1 = 1
AND ROWNUM < 1000
) t
- oracle分析函数lag/lead不能计算日期型数据?
- Oracle分析函数Lead(),Lag()
- oracle 分析函数 LAG、LEAD
- ORACLE分析函数 lag lead
- Oracle lag()/lead() over()分析函数
- oracle下lag和lead分析函数
- oracle 分析函数lag 和 lead 简介
- oracle lag与lead分析函数简介
- Oracle的LAG和LEAD分析函数
- Oracle下lag和lead分析函数
- Oracle的LAG和LEAD分析函数
- oracle lag与lead分析函数简介
- oracle的LAG和LEAD分析函数
- oracle下lag和lead分析函数
- oracle lag与lead分析函数简介
- oracle lag与lead分析函数简介
- oracle lag与lead分析函数简介
- oracle下lag和lead分析函数
- 技术人员的最终出路
- Session丢失的解决办法小结
- 关于xp_cmdshell
- 深入了解泛型
- 【转贴】城市女孩适合做情人,农村女孩适合做老婆
- oracle分析函数lag/lead不能计算日期型数据?
- 二层、三层、四层交换机存在哪些区别
- 4+1视图与UML对应关系
- 【转贴】女生有钱后的疯狂念头!太强了
- 如何成为优秀的软件人才
- AJAX范例大全
- XDoclet起步(转自cjsdn)
- IT!健康!
- 网站在线聊天系统