「23:59:59.999」で
http://10395.diarynote.jp/200606080926140000/
に検索してきていた人がいたので、SQL Server 2008 で例示。
SQL:
結果:
お楽しみください。
あと、これは僕の私的な見解だが、
いくら between のがパフォーマンスがいいと言われていても時刻を日付で制限するときには (<= )AND (< )でやるべき。他のチューニング項目に比すれば些細なことのはず。
===
平成23年7月5日追記
datetime の説明
http://msdn.microsoft.com/ja-jp/library/ms187819.aspx
の「datetime における 1 秒未満の秒の有効桁数の丸め処理 」の項目を参照してください。
http://10395.diarynote.jp/200606080926140000/
に検索してきていた人がいたので、SQL Server 2008 で例示。
SQL:
SELECT
CAST(’2006-6-8 23:59:59.999’ AS datetime2),
CAST(’2006-6-8 23:59:59.999’ AS datetime),
CAST(CAST(’2006-6-8 23:59:59.999’ AS datetime2) AS DATE),
CAST(CAST(’2006-6-8 23:59:59.999’ AS datetime) AS DATE),
CAST(floor(CAST(CAST(’2006-6-8 23:59:59.999’ AS datetime) AS float)) AS DATETIME)
結果:
2006-06-08 23:59:59.9990000
2006-06-09 00:00:00.000
2006-06-08
2006-06-09
2006-06-09 00:00:00.000
お楽しみください。
あと、これは僕の私的な見解だが、
いくら between のがパフォーマンスがいいと言われていても時刻を日付で制限するときには (<= )AND (< )でやるべき。他のチューニング項目に比すれば些細なことのはず。
===
平成23年7月5日追記
datetime の説明
http://msdn.microsoft.com/ja-jp/library/ms187819.aspx
の「datetime における 1 秒未満の秒の有効桁数の丸め処理 」の項目を参照してください。
コメント