# Creating Date
__*MAKEDATE function*__
__*MAKETIME function*__
__*STR_TO_DATE function*__
+ **`MAKEDATE(year, dayofyear)`** Creates **`DATE`** 
+ **`MAKETIME(hour, min, sec)`**: Creates **`TIME`**
+ **`STR_TO_DATE(str, fmt)`**: Creates **`DATETIME`** 
+ Date literal:
  + For example: 
    + **`SELECT MAKEDATE(2020,89), MAKETIME(11,44,57), GET_FORMAT(DATE, 'INTERNAL'), GET_FORMAT(TIME, 'INTERNAL'), GET_FORMAT(DATETIME, 'INTERNAL'), STR_TO_DATE('2020-03-29', '%Y-%m-%d')\G`**  
```
tidb> SELECT 
   -> MAKEDATE(2020,89), MAKETIME(11,44,57), 
   -> GET_FORMAT(DATE, 'INTERNAL'), GET_FORMAT(TIME, 'INTERNAL'), GET_FORMAT(DATETIME, 'INTERNAL'), 
   -> STR_TO_DATE('2020-03-29', '%Y-%m-%d')\G
*************************** 1. row ***************************
          MAKEDATE(2020,89): 2020-03-29
          MAKETIME(11,44,57): 11:44:57
     GET_FORMAT(DATE, 'INTERNAL'): %Y%m%d
     GET_FORMAT(TIME, 'INTERNAL'): %H%i%s
   GET_FORMAT(DATETIME, 'INTERNAL'): %Y%m%d%H%i%s
STR_TO_DATE('2020-03-29', '%Y-%m-%d'): 2020-03-29
1 row in set (0.00 sec)
```

------------------------------------------------------------
The format string in the STR_TO_DATE () function uses the same specifier in the DATE_FORMAT () function.

