將日期轉換為字串

使用 TO_CHAR( date [, format_model [, nls_params]] )

(注意:如果未提供格式模型 ,則 NLS_DATE_FORMAT 會話引數將用作預設格式模型 ;對於每個會話,這可能不同,因此不應該依賴。最好始終指定格式模型。)

CREATE TABLE table_name (
  date_value DATE
);

INSERT INTO table_name ( date_value ) VALUES ( DATE '2000-01-01' );
INSERT INTO table_name ( date_value ) VALUES ( TIMESTAMP '2016-07-21 08:00:00' );
INSERT INTO table_name ( date_value ) VALUES ( SYSDATE );

然後:

SELECT TO_CHAR( date_value, 'YYYY-MM-DD' ) AS formatted_date FROM table_name;

輸出:

FORMATTED_DATE2000-01-01
2016-07-21
2016-07-21

和:

SELECT TO_CHAR(
         date_value,
         'FMMonth d yyyy, hh12:mi:ss AM',
         'NLS_DATE_LANGUAGE = French'
       ) AS formatted_date
FROM   table_name;

輸出:

FORMATTED_DATEJanvier   01 2000, 12:00:00 AM
Juillet   21 2016, 08:00:00 AM
Juillet   21 2016, 19:08:31 PM