我有一个自由文本列,输入日期。
有没有办法可以强制输出显示相同的内容?
例如,有些人正在进入'2015年12月12日',其他人正在进入'02/12 / 2015'我如何才能获得输出以获取日期并将其更改为一致的格式?
不知道从哪里开始。我试过“To_char”,但是说“无效号码”
答案 0 :(得分:0)
实际上我相信你想要to_date( )
:
select to_date('2/12/15', 'mm/dd/rrrr')
from dual;
年份的'rrrr'将正确格式化年份。请在此处查看日期格式:https://docs.oracle.com/cd/B28359_01/server.111/b28286/sql_elements004.htm
答案 1 :(得分:0)
这里你最好的方法可能是使用接受字符串的PL / SQL函数,然后用不同的日期格式图片尝试一系列日期转换('DD / MM / YY','DD / MM / YYYY '等)直到找到一个不引发异常的那个。
如果某些人输入DD / MM / YYYY而其他人输入MM / DD / YYYY,则无效,但在某些情况下会显示。