日付型の最小値はどれでしょう?

(1) 0001 年 1 月 1 日
(2) 1753 年 1 月 1 日
(3) 1900 年 1 月 1 日

正解は・・・・(反転させてくださいね)

どれも正解です。
(1) System.DateTime 型
(2) T-SQL DateTime
(3) T-SQL SmallDateTime
でした。


いかがでしょうか、この微妙なアレが、どっちを優先するだとか、
いろいろ問題になってくるわけで・・・

まとめるとこんな感じですね。(時間まで書いてませんが)

最小値 最大値 タイマ刻み
System.DateTime 0001 年 1 月 1 日 9999 年 12 月 31 日 100 ナノ秒 (0.0000001 秒)
T-SQL DateTime 1753 年 1 月 1 日 9999 年 12 月 31 日 3.33... ミリ秒(0.0033333 秒)
T-SQL SmallDateTime 1900 年 1 月 1 日 2079 年 6 月 6 日 1 分 (60 秒)

実際の、DateTimeの最小値は、DateTime.MinValue フィールドの値
 0001 年 1 月 1 日の 00:00:00.0000000
となります。

MSDNのリンク

DateTime.MinValue フィールド
http://msdn.microsoft.com/ja-jp/library/system.datetime.minvalue.aspx

DateTime 構造体
http://msdn.microsoft.com/ja-jp/library/system.datetime.aspx

System.DateTime メソッド (LINQ to SQL)
http://msdn.microsoft.com/ja-jp/library/bb882657.aspx