TO_DATE()
是一個在 SQL 中用于將字符串轉換為日期類型的函數
SELECT TO_DATE('2021-06-01', 'YYYY-MM-DD') AS date;
這里,我們將字符串 ‘2021-06-01’ 轉換為日期類型,并指定了輸入格式為 ‘YYYY-MM-DD’。
假設我們有一個名為 orders
的表,其中包含一個名為 order_date
的列,該列存儲了訂單日期(類型為 VARCHAR)。現在,我們想要查詢所有在 2021 年 6 月下的訂單。
SELECT *
FROM orders
WHERE TO_DATE(order_date, 'YYYY-MM-DD') >= TO_DATE('2021-06-01', 'YYYY-MM-DD')
AND TO_DATE(order_date, 'YYYY-MM-DD') < TO_DATE('2021-07-01', 'YYYY-MM-DD');
這里,我們使用 TO_DATE() 將 order_date
列轉換為日期類型,并與指定的日期范圍進行比較。
假設我們想要計算每個月的訂單數量。我們可以使用 TO_DATE() 和 GROUP BY 子句來實現這一目標。
SELECT TO_DATE(order_date, 'YYYY-MM-DD'), COUNT(*) as order_count
FROM orders
GROUP BY TO_DATE(order_date, 'YYYY-MM-DD');
這里,我們使用 TO_DATE() 將 order_date
列轉換為日期類型,并按照日期進行分組。然后,我們使用 COUNT(*) 函數計算每個分組的訂單數量。
注意:在使用 TO_DATE() 時,請確保輸入格式與實際數據格式相匹配,否則可能會導致錯誤或不正確的結果。