- CONVERT関数を使用する方法:
DECLARE @date VARCHAR(10)
SET @date = '31/12/2023'
SELECT CONVERT(DATE, @date, 103) AS ConvertedDate
- CAST関数を使用する方法:
DECLARE @date VARCHAR(10)
SET @date = '31/12/2023'
SELECT CAST(STUFF(STUFF(@date, 3, 0, '/'), 6, 0, '/') AS DATE) AS ConvertedDate
- FORMAT関数を使用する方法(SQL Server 2012以降):
DECLARE @date VARCHAR(10)
SET @date = '31/12/2023'
SELECT FORMAT(CONVERT(DATE, @date, 103), 'yyyy-MM-dd') AS ConvertedDate
これらのコード例では、'31/12/2023'という日付を変換しています。103は日付形式コードで、'dd/mm/yyyy'形式を表します。
注意点として、日付の文字列を直接変換する場合、入力文字列のフォーマットが正確に合致している必要があります。また、データベースの設定によっては、日付の形式が異なる場合がありますので、適宜調整してください。
以上が、SQL Serverでdd/mm/yyyy形式の日付をyyyy-mm-dd形式に変換する方法です。