Sql 将时间戳转换为日期oracle
我有一个时间戳字段,如下所示: 2015-08-2416:24:28.763915 我只想得到date和insert to date字段 我试过这个:Sql 将时间戳转换为日期oracle,sql,oracle,timestamp,to-date,Sql,Oracle,Timestamp,To Date,我有一个时间戳字段,如下所示: 2015-08-2416:24:28.763915 我只想得到date和insert to date字段 我试过这个: select TO_DATE(CAST (CON1.AF_UPDATE_DT AS VARCHAR(10)), DD/MM/YYYY) FROM AF_EMR_MEM_CONT CON1 但是我得到了这个错误 00904。00000-“%s:无效标识符” 如果我尝试这样做: select AF_UPDATE_DT TO_DATE(
select
TO_DATE(CAST (CON1.AF_UPDATE_DT AS VARCHAR(10)), DD/MM/YYYY)
FROM AF_EMR_MEM_CONT CON1
但是我得到了这个错误
00904。00000-“%s:无效标识符”
如果我尝试这样做:
select AF_UPDATE_DT
TO_DATE(CAST (CON1.AF_UPDATE_DT AS VARCHAR(10)), YYYY/MM/DD)
FROM AF_EMR_MEM_CONT CON1
我得到一个错误:
00923。00000-“从预期位置未找到关键字”
可以使用从字符串中提取日期部分,然后将其修改为日期对象:
select TO_DATE(
SUBSTR('2015-08-24 16:24:28.763915', 1, 10), 'YYYY-MM-DD') -- 2015-08-24
from DUAL
查看此您只需截断时间戳,TRUNC函数的结果是日期:
SELECT TRUNC(LOCALTIMESTAMP) FROM DUAL;
在Oracle中,
date
列仍然有一个时间部分。如果您想将时间设置为00:00:00
使用trunc(AF\u UPDATE\u DT)
谢谢您,我尝试了您的解决方案,效果非常好!