根据用户输入转换oracle日期格式

时间:2019-04-01 15:18:42

标签: sql oracle

我有一个供用户加载数据的预言表。用户使用的日期格式与值列表中的日期格式不同。在添加此格式时需要帮助

SELECT
  TO_CHAR(TO_DATE( 'Sunday, November 4, 2018', 'DD MON YYYY' ))
FROM
  DUAL;

转换为'11/4/2018'

user date format

1 个答案:

答案 0 :(得分:1)

您可以使用以下表达式将类似'Sunday, November 4, 2018' string 转换为DATE数据类型:

TO_DATE( 'Sunday, November 4, 2018', 'Day, Month DD, YYYY' )

然后可以使用TO_CHAR() date 转换为另一种格式的 string

您似乎正在寻找:

SELECT 
    TO_CHAR(TO_DATE( 'Sunday, November 4, 2018', 'Day, Month DD, YYYY' ), 'MM/DD/YYYY') 
FROM DUAL;

这将产生:

11/04/2018

Demo on DB Fiddle