下面的SQL中有什么错误:
select to_Date(substr('2/22/2015 9:20:06 AM',1,9),'mm/dd/yyyy','DD-MON-YY') from dual我得到了以下错误:
ORA-12702: SQL函数错误中使用的无效NLS参数字符串
但select substr('2/22/2015 9:20:06 AM',1,9) from dual展示了2/22/2015。我想把这个转换成日期。
发布于 2015-04-20 14:10:49
to_Date(substr('2/22/2015 9:20:06 AM',1,9),'mm/dd/yyyy',‘’)
将查询分解为各个部分,然后理解。
substr和to_date是正在使用的两个函数。
TO_DATE,TO_DATE(‘2/22/2015 9:20:06 AM', 1,9),'mm/dd/yyyy')。因此,在您发布的查询中,根本不需要'DD-MON-YY'格式掩码。
此外,您正在努力实现的目标相当于:
TRUNC(TO_DATE('2/22/2015 9:20:06 AM', 'MM/DD/YYYY HH:MI:SS AM'))TRUNC从日期类型中删除时间部分。
或者,
您可以使用ANSI时间戳文本:
TRUNC(TIMESTAMP '2015-02-22 09:20:06')发布于 2015-04-20 12:31:42
从TO_DATE方法中删除第三个参数:
select to_date(substr('2/22/2015 9:20:06 AM',1,9),'mm/dd/yyyy') from dual这是nlsparam (参见文档)。
https://stackoverflow.com/questions/29747882
复制相似问题