繁体   English   中英

如何在Oracle SQL中以一种格式的日期作为输入并以另一种格式输出日期?

How do you take a date in one format as input and output a date in a different format in Oracle SQL?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我需要以特定格式('YYYY-MM-DD')接受日期作为参数,并以另一种格式('Day Month DD,YYYY')输出相同的日期。

到目前为止,我一直在尝试从输入中提取每个元素,以便以正确的格式再次将其缝合在一起,尽管我遇到的一个问题是,其中的“天”提取部分基本上只占用了当月的某天。我将其输入并输出7天mod的查询,这是没有用的。

SELECT
    TO_CHAR( TO_DATE( EXTRACT( DAY FROM (TO_DATE( :input_date, 'YYYY-MM-DD'))), 'DD'), 'Day') as "day_word",
    TO_CHAR( TO_DATE( EXTRACT( MONTH FROM (TO_DATE(:input_date, 'YYYY-MM-DD'))), 'MM'), 'Month') as "month"
FROM
    dual

如果我能避免在SQL中进行这种手动的字符串操作(因为它很烂),我将非常喜欢它。 请告诉我有更好的方法!

1 个回复

为什么不只使用to_char()呢?

select to_char(to_date(:work_date, 'YYYY-MM-DD'), 'DAY Month DD, YYYY')
4 将一种日期格式更改为另一种

我以下列格式获取日期( Date而不是String ): 我想将日期格式更改为(日期): 以便在数据库中更新相同的内容。 我试过以下代码: 正在产生以下回应: 任何人都可以分享这段代码来做同样的事情。 ...

8 SQL 将日期从一种格式转换为另一种格式

我有一个dateofbirth_string列,它是一个 VARCHAR,包含格式为 dd/mm/yyyy 的日期。 我想将这些值转换为格式 DATE (yyyy-mm-dd) 并放在同一行的字段dateofbirth_date中。 请注意, dateofbirth_string中的某些值可能格式错 ...

2021-05-02 18:47:42 1 25   mysql/ sql
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM