【发布时间】:2015-02-19 22:31:37
【问题描述】:
我正在尝试获取 asofdate 字段的星期几。我在使用 Oracle SQL 时收到一条错误消息:“在应有数字字符的地方发现了一个非数字字符。”该错误是针对此查询的:
select to_char(to_date(max(distinct(asofdate)), 'mm/dd/yyyy'), 'DY') from PS_Z_EXS251AE_EMP
以下查询返回 '1/6/2015'
select max(distinct(asofdate)) from PS_Z_EXS251AE_EMP
有谁知道我做错了什么?
【问题讨论】:
-
您是否有机会将日期存储在
CHAR或VARCHAR列中?1/6/2015不会使用掩码mm/dd/yyyy转换为日期。附:使用MAX()时不需要DISTINCT -
我试过了,它按预期工作:sqlfiddle.com/#!4/49063/2/0 你在 asofdate 中有一些无效的内容
-
存储为日期
-
那你为什么要转换成日期?