This topic describes how to use the DATE_FORMAT function. This function converts a date value of the STRING type from a format into a specific format.

Limits

This function is supported only in Realtime Compute for Apache Flink that uses Ververica Runtime (VVR) 3.0.0 or later.

Syntax

VARCHAR DATE_FORMAT(TIMESTAMP time, VARCHAR to_format)
VARCHAR DATE_FORMAT(VARCHAR date, VARCHAR to_format)
VARCHAR DATE_FORMAT(VARCHAR date, VARCHAR from_format, VARCHAR to_format)

Input parameters

Parameter Data type Description
time TIMESTAMP The source string.
date VARCHAR The source string. The default format is yyyy-MM-dd HH:mm:ss.
from_format VARCHAR The original format. This parameter is optional. The default format is yyyy-MM-dd hh:mm:ss.
to_format VARCHAR The format of the output date.
Note If an input parameter is NULL or a parsing error occurs, NULL is returned.

Example

  • Test data
    date1(VARCHAR) datetime1(VARCHAR) nullstr(VARCHAR)
    0915-2017 2017-09-15 00:00:00 NULL
  • Test statement
    SELECT DATE_FORMAT(datetime1, 'yyMMdd') as var1,
     DATE_FORMAT(nullstr, 'yyMMdd') as var2,
     DATE_FORMAT(datetime1, nullstr) as var3,
     DATE_FORMAT(date1, 'MMdd-yyyy', nullstr) as var4,
     DATE_FORMAT(date1, 'MMdd-yyyy', 'yyyyMMdd') as var5,
     DATE_FORMAT(TIMESTAMP '2017-09-15 23:00:00', 'yyMMdd') as var6
    FROM T1;
  • Test result
    var1(VARCHAR) var2(VARCHAR) var3(VARCHAR) var4(VARCHAR) var5(VARCHAR) var6(VARCHAR)
    170915 null null null 20170915 170915