【发布时间】:2009-10-01 21:23:37
【问题描述】:
我有一个客户将旧数据存储在 Oracle 数据库中。此类数据在数据库的一列中包含混合的 DATE 值(该字段是 VARCHAR(32))。 例如,它们存储“2009 年 9 月 30 日”,有时存储“1254431689”(即纪元时间的时间戳)。
我没有选择将数据分成多列(所以我必须处理它)。
问题是 - 如何在 SQL Select 语句中动态转换数据?
【问题讨论】:
-
既然不能拆分列,那能不能把不需要的形式的数据转换成另一种形式?
-
为什么不清理数据?编写一个快速脚本(即使在 SQL 中...)遍历每一行,检测它是否全是数字(因此是纪元),或者做相反的事情,并用可接受的标准替换该值。
标签: sql oracle plsql data-integrity