Oracle日期时间格式化去掉时分秒(Oracle中去掉时分秒)

Oracle日期时间格式化:去掉时分秒

在Oracle数据库中,日期和时间数据类型可以存储年、月、日、时、分和秒。有时候我们只需要日期部分,而不需要时间。本文将介绍如何使用Oracle的日期时间函数来格式化日期,去掉时分秒。

使用TRUNC函数去掉时间部分

Oracle的TRUNC函数可以将日期的时间部分截取掉,只保留日期部分。语法如下:

TRUNC(date [, fmt])

其中,date是要被截取的日期,fmt是表示日期格式的字符串。如果省略fmt参数,则默认为’DD’,即只保留日期的天部分。例如,下面的代码截取出2021年8月1日的日期部分:

SELECT TRUNC(TO_DATE(‘8/1/2021 12:34:56 AM’, ‘MM/DD/YYYY HH:MI:SS AM’)) as truncated_date FROM dual;

输出:

TRUNCATED_DATE

————–

8/1/2021

如果只需要日期的年、月和日部分,可以用’YYYY-MM-DD’格式的字符串作为fmt参数。例如:

SELECT TRUNC(TO_DATE(‘8/1/2021 12:34:56 AM’, ‘MM/DD/YYYY HH:MI:SS AM’), ‘YYYY-MM-DD’) as truncated_date FROM dual;

输出:

TRUNCATED_DATE

————–

2021-08-01

使用CAST函数将日期格式化为字符串

除了使用TRUNC函数截取日期部分外,还可以用CAST函数将日期格式化为字符串,只保留日期部分。语法如下:

CAST(date AS VARCHAR2(format))

其中,date是要被格式化的日期,format是表示日期格式的字符串。如果省略format参数,则默认为’DD-MON-RR’. 例如,下面的代码将2021年8月1日格式化为字符串,只保留日期部分:

SELECT CAST(TO_DATE(‘8/1/2021 12:34:56 AM’, ‘MM/DD/YYYY HH:MI:SS AM’) AS VARCHAR2(‘YYYY-MM-DD’)) as truncated_date FROM dual;

输出:

TRUNCATED_DATE

————–

2021-08-01

总结

本文介绍了如何使用Oracle的日期时间函数将日期格式化,只保留日期部分,去掉时间部分。通过TRUNC和CAST函数,我们可以简单地将日期格式化为需要的字符串格式,方便存储和查询。


数据运维技术 » Oracle日期时间格式化去掉时分秒(Oracle中去掉时分秒)