- ベストアンサー
日付型→文字列
SQLServer2005の環境にて、 日付型の項目(YYYY/MM/DD HH:MM:SS)から日付のみを抽出したい場合、 現在SUBSTRING(CONVERT(VARCHAR,AA),1,10) と変換を行っているのですが、結果が「MM DD YYYY」となってしまいます。 「YYYY/MM/DD」の形式で取得するにはどのようなSQL文にすればよろしいのでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
これだけで大丈夫だったりしませんか?↓ CONVERT(char,日付,111) →"2002/08/31" ちなみに現状はこんな感じですかね?↓ CONVERT(char,日付,11) →"02/08/31"
その他の回答 (1)
- O_cyan
- ベストアンサー率59% (745/1260)
回答No.2
SQLServerのdatetime型の既定値は mon dd yyyy hh:miAM です。 そのままSUBSTRINGで抜き出せばMM DD YYYYになります。 日付型データを文字列として値を返すのは CONVERT(char,日付型フィールド,111) でYYYY/MM/DDの形式の文字列になります。
補足
現在何も変更しないで表示されている値は 「05 9 2006」です。 上記「CONVERT(char,日付,111)」に変更して正しく表示されるようになりました。 ありがとうございました。