SQL - DATEFROMPARTS() Function
The SQL DATEFROMPARTS() function is used to return a date value from individual segments such as year, month, and day. This function returns the result in a date type.
This function accepts three parameters - year, month, and day - which are used to construct a date value that represents a specific date in time.
This function returns an error in the following cases −
If the arguments passed to this function are invalid, it results in an error.
It returns null if any of the arguments have a null value.
Syntax
Following is the syntax of the SQL DATEFROMPARTS() function −
DATEFROMPARTS(year, month, day)
Parameters
This function accepts three parameters. The same is described below −
year − An integer value that specifies the 'YEAR' segment of the date, expressed as an integer.
month − An integer value that specifies the 'MONTH' segment of the date.
day − An integer value that specifies the 'DAY' segment of the date.
Example
In the following example, we are trying to retrieve the complete date from the individual segments such as year, month, and day using the following query −
SQL> SELECT DATEFROMPARTS(2023, 02, 16) AS DATE_FROM_PARTS;
Output
When we execute the above query, the output is obtained as follows −
+-----------------+ | DATE_FROM_PARTS | +-----------------+ | 2023-02-16 | +-----------------+
Example
If we try to pass null as a parameter to the function, it returns the output as null
SQL> SELECT DATEFROMPARTS(null, 02, 16) AS DATE_FROM_PARTS;
Output
The output for the above query is produced as given below −
+-----------------+ | DATE_FROM_PARTS | +-----------------+ | null | +-----------------+
Example
If we try to pass negative values as parameters to the function, it returns an error statement
SQL> SELECT DATEFROMPARTS(2023, 02, -10) AS DATE_FROM_PARTS;
Error
If the provided values are not valid, we will receive an invalid arguments error.
Cannot construct data type date, some of the arguments have values which are not valid.
Example
If we try to pass invalid values as parameters to the function, it returns an error statement
SQL> SELECT DATEFROMPARTS(2023, 02, 38) AS DATE_FROM_PARTS;
Error
When we execute the above query, the output is obtained as follows −
Cannot construct data type date, some of the arguments have values which are not valid.
Example
If we try to pass 0 as a parameter to the function, it returns an error statement.
SQL> SELECT DATEFROMPARTS(0000, 02, 00) AS DATE_FROM_PARTS;
Error
If we execute the above query, the result is produced as follows −
Cannot construct data type date, some of the arguments have values which are not valid.