• 締切済み

MS-SQL datetime型から日付だけを抽出する方法

 datetime型に、2004/02/16 15:50:00 という値が入ったレコードがあると仮定します。  このデータから 2004/02/16 と日付のみを使用したい時、適当な関数がなく苦慮しています。  Accessでいう、DateValue という関数に相当するものがあれば都合がいいのですが。  今は、 cast(cast(year(YMDHNS) as varchar)+'/'+cast(month(YMDHNS) as varchar)+'/'+cast(day(YMDHNS) as varchar) as datetime) などとしています。(YMDHNS は項目名)  とても美しくないのですが、これしか方法ないのでしょうか。

みんなの回答

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

あ、読み違えてました。こうでしょうか: select cast( convert( varchar, current_timestamp, 111 ) as datetime); これもあんまり美しくないっちゃ、ないような。

YoshiakiKun
質問者

お礼

 ありがとうございます。  けど・・・あまり美しくないですね。確かに。。。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

関数convert()はどうでしょう。 こんな感じ: select convert( varchar, current_timestamp, 111 );

参考URL:
http://msdn.microsoft.com/library/en-us/tsqlref/ts_ca-co_2f3o.asp

関連するQ&A