select case
when sale not in TO_date(sale,'MMYY') then 'N'
else sale
end test
from daily sales
我想看看使用上面的选择列中的数据是否符合以下条件。我收到以下错误:
LITERAL不匹配格式字符串
小数据集
0109
0106
0409
列是varchar
答案 0 :(得分:0)
to_date('0109', 'mmyy')
是正确的,它将返回01-01-2009 00:00:00 AM(以一种可能的格式)。所以问题很可能在列中 - 您可能有一个或多个值实际上不是四位数。您需要进行一些故障排除。
我会尝试的东西:
select max(length(sale)) as max_len, min(length(sale)) as min_len from table_name
(daily sales
不能是表名 - 表名中没有空格)