LightDB to_char 三入参函数支持
文章目录
- 背景
- 函数示例
背景
在信创适配中,从Oracle迁移过来的程序使用了TO_CHAR函数。
LightDB-X 23.3版本已经支持了两个入参的TO_CHAR函数,并不支持三个入参的TO_CHAR函数。LightDB-X 23.4版本对三个入参的TO_CHAR函数进行了支持。
函数示例
准备数据, 在LightDB-X Oracle模式下运行如下SQL
CREATE TABLE date_tab (ts_col date, tsltz_col TIMESTAMP, tstz_col TIMESTAMP WITH TIME ZONE);
INSERT INTO date_tab VALUES (
TIMESTAMP'1999-12-01 10:00:00',
TIMESTAMP'1999-12-01 10:00:00',
TIMESTAMP'1999-12-01 10:00:00');
INSERT INTO date_tab VALUES (
TIMESTAMP'1999-12-02 10:00:00 -8:00',
TIMESTAMP'1999-12-02 10:00:00 -8:00',
TIMESTAMP'1999-12-02 10:00:00 -8:00');
两参数的TO_CHAR使用
select to_char(ts_col, 'YYYYMMDD') c1, to_char(tsltz_col, 'YYYY-MM-DD') c2, to_char(tstz_col, 'YYYY/MM/DD') c3 from date_tab;
c1 | c2 | c3
----------+------------+------------
19991201 | 1999-12-01 | 1999/12/01
19991202 | 1999-12-02 | 1999/12/02
三参数的TO_CHAR使用
select to_char(ts_col, 'YYYYMMDD', 'NLS_DATE_LANGUAGE=''SIMPLIFIED CHINESE''') c1, to_char(tsltz_col, 'YYYY-MM-DD', 'NLS_DATE_LANGUAGE=''SIMPLIFIED CHINESE''') c2, to_char(tstz_col, 'YYYY/MM/DD', 'NLS_DATE_LANGUAGE=''SIMPLIFIED CHINESE''') c3 from date_tab;
c1 | c2 | c3
----------+------------+------------
19991201 | 1999-12-01 | 1999/12/01
19991202 | 1999-12-02 | 1999/12/02