oracle问题求解

oracle表中有三列:年、月、日,分别存放年月日数据,新增一列:日期,date型。如何将年、月、日三列值填到日期列中,格式为2018-4-10?请高手解答,谢谢!如果三... oracle表中有三列:年、月、日,分别存放年月日数据,新增一列:日期,date型。如何将年、月、日三列值填到日期列中,格式为2018-4-10?请高手解答,谢谢!
如果三列为数值型怎么做?如果是文本型又怎么做?
展开
 我来答
Q1017632646
2018-04-08 · TA获得超过345个赞
知道小有建树答主
回答量:440
采纳率:68%
帮助的人:103万
展开全部
假设年月日三列分别为 YEAR MONTH DAY 日期字段为RQ 表名为TABLE
三列为数值或者文本都一样,用一下语句实现:
UPDATE TABLE SET RQ=TO_DATE(YEAR||REPLACE(LPAD(MONTH,2),' ','0')||REPLACE(LPAD(DAY,2),' ','0'),'YYYY-MM-DD')
||是拼接符,将年月日三个字段拼接起来,REPLACE(LPAD(MONTH,2),' ','0')是将数字或文本4变成04,这样才能按后面的日期格式'YYYY-MM-DD'将拼接成的字符串转成日期型。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式