Oracle TO_CHAR(datetime) 函数使用指南
Oracle TO_CHAR(datetime) 是一个内置函数,它将给定的日期时间或者间隔值根据指定的格式转化为字符串。
Oracle TO_CHAR(datetime) 语法
这里是 Oracle TO_CHAR(datetime) 函数的语法:
TO_CHAR(expr [, fmt [, 'nlsparam' ] ])
参数
expr-
必需的。一个日期时间或间隔表达式。它可以是
DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE,INTERVAL DAY TO SECOND, 或INTERVAL YEAR TO MONTH数据类型。 fmt-
可选的。格式化字符串。
'nlsparam'-
可选的。您可以使用这个
'NLS_DATE_LANGUAGE = language'形式设置此参数,其中language是语言名称。
返回值
Oracle TO_CHAR(datetime) 函数返回一个 VARCHAR2 类型的字符串。
如果省略 fmt,则将 date 转换为如下 VARCHAR2 值:
DATE值将转换为默认日期格式的值。TIMESTAMP和TIMESTAMP WITH LOCAL TIME ZONE值将转换为默认时间戳格式的值。TIMESTAMP WITH TIME ZONE值将转换为具有时区格式的默认时间戳中的值。- 间隔值被转换为间隔文字的数字表示。
如果任意一个参数为 NULL, TO_CHAR(datetime) 将返回 NULL。
Oracle TO_CHAR(datetime) 示例
这里有几个展示了 Oracle TO_CHAR(datetime) 函数用法的示例。
基本用法
SELECT
TO_CHAR(DATE '2023-02-13', 'YYYY/MM/DD')
FROM dual;
输出:
TO_CHAR(DATE'2023-02-13','YYYY/MM/DD')
_________________________________________
2023/02/13或者您可以指定输出时间部分:
SELECT
TO_CHAR(DATE '2023-02-13', 'YYYY/MM/DD HH24:MI:SS')
FROM dual;
输出:
TO_CHAR(DATE'2023-02-13','YYYY/MM/DDHH24:MI:SS')
___________________________________________________
2023/02/13 00:00:00间隔
Oracle TO_CHAR(datetime) 函数允许您输出一个间隔值:
SELECT
TO_CHAR(INTERVAL '25-2' YEAR TO MONTH) "Year To Month",
TO_CHAR(INTERVAL '2 23:59:59' DAY TO SECOND) "Day To Second"
FROM dual;
输出:
Year To Month Day To Second
________________ ______________________
+25-02 +02 23:59:59.000000本示例使用了默认格式参数。
语言设置
Oracle TO_CHAR(datetime) 函数允许您指定语言以按照设定的语言显示月份或者星期几。
SELECT
TO_CHAR(
DATE '2023-02-13',
'DY, DD MONTH YYYY',
'NLS_DATE_LANGUAGE = English'
) "English",
TO_CHAR(
DATE '2023-02-13',
'DY, DD MONTH YYYY',
'NLS_DATE_LANGUAGE = German'
) "German"
FROM dual;
输出:
English German
_________________________ ________________________
MON, 13 FEBRUARY 2023 MO, 13 FEBRUAR 2023NULL 参数
如果任意一个参数为 NULL, TO_CHAR(datetime) 将返回 NULL。
SET NULL 'NULL';
SELECT
TO_CHAR(NULL, NULL, NULL)
FROM dual;
输出:
TO_CHAR(NULL,NULL,NULL)
__________________________
NULL在本示例中,我们使用 SET NULL 'NULL'; 语句将 NULL 值显示为 'NULL' 字符串。
结论
Oracle TO_CHAR(datetime) 是一个内置函数,它将给定的日期时间或者间隔值根据指定的格式转化为字符串。