>>> spark.sql("SELECT DATE '1970'").show()
+-----------------+
|DATE '1970-01-01'|
+-----------------+
|       1970-01-01|
+-----------------+

>>> spark.sql("SELECT DATE('1970')").show()
+----------+
|      1970|
+----------+
|1970-01-01|
+----------+

>>> spark.sql("SELECT DATE '1970-1'").show()
+-----------------+
|DATE '1970-01-01'|
+-----------------+
|       1970-01-01|
+-----------------+

>>> spark.sql("SELECT DATE('1970-1')").show()
+----------+
|    1970-1|
+----------+
|1970-01-01|
+----------+

>>> spark.sql("SELECT DATE '1970-01'").show()
+-----------------+
|DATE '1970-01-01'|
+-----------------+
|       1970-01-01|
+-----------------+

>>> spark.sql("SELECT DATE('1970-01')").show()
+----------+
|   1970-01|
+----------+
|1970-01-01|
+----------+

>>> spark.sql("SELECT DATE '1970-01-'").show()  # doctest: +SAIL_ONLY
Traceback (most recent call last):
...
pyspark.errors.exceptions.connect.IllegalArgumentException: ...
>>> spark.sql("SELECT DATE('1970-01-')").show()  # doctest: +SKIP
+--------+
|1970-01-|
+--------+
|    NULL|
+--------+

>>> spark.sql("SELECT DATE '1970-01-01'").show()
+-----------------+
|DATE '1970-01-01'|
+-----------------+
|       1970-01-01|
+-----------------+

>>> spark.sql("SELECT DATE('1970-01-01')").show()
+----------+
|1970-01-01|
+----------+
|1970-01-01|
+----------+

>>> spark.sql("SELECT DATE '-1970-01-01'").show()
+------------------+
|DATE '-1970-01-01'|
+------------------+
|       -1970-01-01|
+------------------+

>>> spark.sql("SELECT DATE('-1970-01-01')").show()
+-----------+
|-1970-01-01|
+-----------+
|-1970-01-01|
+-----------+

>>> spark.sql("SELECT DATE '1970-01-01 00:01:02'").show()
+-----------------+
|DATE '1970-01-01'|
+-----------------+
|       1970-01-01|
+-----------------+

>>> spark.sql("SELECT DATE('1970-01-01 00:01:02')").show()
+-------------------+
|1970-01-01 00:01:02|
+-------------------+
|         1970-01-01|
+-------------------+

>>> spark.sql("SELECT DATE '-1970-01-01 abc'").show()
+------------------+
|DATE '-1970-01-01'|
+------------------+
|       -1970-01-01|
+------------------+

>>> spark.sql("SELECT DATE('-1970-01-01 abc')").show()
+---------------+
|-1970-01-01 abc|
+---------------+
|    -1970-01-01|
+---------------+

>>> spark.sql("SELECT DATE '1970-01-01' - DATE '-1970-01-01'").show(truncate=False)  # doctest: +SKIP
+----------------------------------------+
|(DATE '1970-01-01' - DATE '-1970-01-01')|
+----------------------------------------+
|INTERVAL '1439055' DAY                  |
+----------------------------------------+

>>> spark.sql("SELECT typeof(DATE '1970-01-01')").show()
+-------------------------+
|typeof(DATE '1970-01-01')|
+-------------------------+
|                     date|
+-------------------------+

>>> spark.sql("SELECT typeof(DATE('1970-01-01'))").show()
+------------------+
|typeof(1970-01-01)|
+------------------+
|              date|
+------------------+
