SQL - DATETRUNC 函式



SQL 的DATETRUNC()函式用於將日期或時間值截斷到指定的日期部分。

該函式接受兩個引數 - 第一個是應將日期或時間值截斷到的日期部分,第二個是要截斷的日期或時間值。

語法

以下是 SQL DATETRUNC() 函式的語法:

DATETRUNC(datepart, date)

引數

此函式接受兩個引數。如下所述:

  • datepart - 日期部分可以是以下值之一:

    • year - 將日期/時間值截斷到指定年份的開始。

    • quarter - 將日期/時間值截斷到指定季度的開始。

    • month - 將日期/時間值截斷到指定月份的開始。

    • dayofyear - 將日期/時間值截斷到指定年份中的某天的開始。

    • day - 將日期/時間值截斷到指定日的開始。

    • week - 將日期/時間值截斷到指定周的開始。

    • hour - 將日期/時間值截斷到指定小時的開始。

    • minute - 將日期/時間值截斷到指定分鐘的開始。

    • second - 將日期/時間值截斷到指定秒的開始。

    • millisecond - 將日期/時間值截斷到指定毫秒的開始。

    • microsecond - 將日期/時間值截斷到指定微秒的開始。

  • date - 這可以是任何型別,例如 smalldatetime、datetime、date、time、datetime2、datetimeoffset。

示例

這裡,我們嘗試使用以下查詢將 datetime 值截斷到year的開始:

SQL> SELECT DATETRUNC(YEAR, '2023-02-20 06:32:15') AS RESULT;

輸出

如果我們執行上面的查詢,則結果如下所示:

+-----------------------------+
| RESULT                      |
+-----------------------------+
| 2023-01-01 00:00:00.0000000 |
+-----------------------------+

示例

在下面的示例中,我們嘗試將 datetime 值截斷到week的開始(從星期日開始):

SQL> SELECT DATETRUNC(WEEK, '2023-02-20 06:32:15') AS RESULT;

輸出

執行上述查詢後,獲得的輸出如下:

+-----------------------------+
| RESULT                      |
+-----------------------------+
| 2023-02-15 00:00:00.0000000 |
+-----------------------------+

示例

在下面的示例中,我們嘗試將 datetime 值截斷到quarter的開始:

SQL> SELECT DATETRUNC(QUARTER, '2023-05-20 06:32:15') AS RESULT;

輸出

上述查詢的輸出如下所示:

+-----------------------------+
| RESULT                      |
+-----------------------------+
| 2023-04-01 00:00:00.0000000 |
+-----------------------------+

示例

這裡,我們嘗試使用以下查詢將 datetime 值截斷到hour的開始:

SQL> SELECT DATETRUNC(HOUR, '2023-02-20 06:32:15') AS RESULT;

輸出

執行上述查詢後,輸出將顯示如下:

+-----------------------------+
| RESULT                      |
+-----------------------------+
| 2023-02-20 06:00:00.0000000 |
+-----------------------------+

示例

我們可以使用以下查詢將 datetime 值截斷到second的開始:

注意 - SYSDATETIME() 函式檢索當前日期和時間。

SQL> SELECT DATETRUNC(SECOND, SYSDATETIME()) AS RESULT;

輸出

執行上述查詢後,獲得的輸出如下:

+-----------------------------+
| RESULT                      |
+-----------------------------+
| 2023-02-20 16:39:46.0000000 |
+-----------------------------+
sql-date-functions.htm
廣告