生年月日を表す
答えて
.NETでBCの日付を処理するために独自のクラスをロールし、データベースに文字列または年、月の別のフィールドとして格納する必要があります(必要な精度に応じて)データベース側で検索と並べ替えを実行する必要があります。
日付に対するSQL Serverのサポートは、.NETのものよりも制限的です(1753年または1752年までのみ戻っています)。
This blog postは、1つの可能な実装ですが、年だけを格納するため、非常に限られたものです。しかし、私はあなたのニーズに応じて必要に応じて変更できると確信しています。例えば、IComparable、IEquatable、IFormattable、おそらくIConvertibleなどのいくつかのインターフェイスを実装することはおそらくうまくいくかもしれません。
簡単な答え - 日、月、年を別々の数値フィールドとして保存します。日と月を組み合わせて1日の価値にすることはできますが、うるう年に注意する必要があります。バック標準の日数に日付を変換する方法とがある...
http://en.wikipedia.org/wiki/Julian_day
あなたが変換を自分で行う場合は、基本的には(その番号を記憶している -
代替答えちょうど日付を表すように起こる)ので、問題はないはずです。あなたのコンバージョンが正しいことを確認する以外にも
ウィキペディアの記事を読んでから、可能な限り早い日付は紀元前4714年であり、キリスト教の歴史はそれよりも少し前になります(起源をどのように解釈するかによって紀元前12000〜6000)。 –
私はそれが4004年紀元前だと思ったが、それからGood Omens(http://www.reddit.com/r/firstpage/comments/cu6bh/good_omens_terry_pratchett_neil_gaiman/)からそれを得た。それは良いユーモアで撮影されていることを願っています。とにかく、原理的には、あなたはいくつかの不快感を気にしない限り、日の数字を後ろに広げることができます。日付と日付の間の差異を計算すると、エラーが発生しやすくなりますが、日付を数値に変換する関数を導き出すことは可能です。必ずしも価値があるとは限りません。もちろん、それはあなたがどのように日付を使用するかによって異なります。 – Steve314
それは当然のことながら、日付の処理がエラーになりやすいです。エラー範囲が12,000BCから6,000BCに及ぶ場合、カレンダー定義の問題のために数日は大したことではありません。 – Steve314
カレンダーの種類を決定するのは自由ですなら、私は2つの時代を認識する
能力があるグレゴリオ暦、と先読みを行くことをお勧めします:紀元前に4月1日に生まれ と紀元
http://msdn.microsoft.com/en-us/library/system.globalization.gregoriancalendar.aspx
備考の下の最初の段落:「このGregorianCalendarクラスの実装は、現在の時代(A.D.またはC.E.)のみを認識します。」 –
- 1. 生年月日から年月日
- 2. 生年月日ウィザードプログラム
- 3. 生年月日を確認
- 4. wordpress meta_query生年月日と誕生日
- 5. 生年月日を取得するロジック年齢から年月日を表現します
- 6. 生年月日:すべての地元で同じ生年月日ですか?
- 7. ドッグイヤー生年月日クエリ
- 8. 生年月日入力マスク
- 9. 日、月、年からNSDateを生成
- 10. 年/月/日を年月日に変更する
- 11. angle:生年月日の年齢を計算する
- 12. SASは年齢から生年月日を見つけます
- 13. 生年月日からの年数を計算する
- 14. 年齢から生年月日を計算する
- 15. meteorjsから生年月日に変換
- 16. 生年月日登録ページ、Eclipse
- 17. 生年月日のCHECK制約?
- 18. 生年月日を使用している年齢グループ
- 19. Excelのスプレッドシートの生年月日から年齢を検索
- 20. 日付ピッカー - 月/年
- 21. javascript作成日年月日
- 22. ルビーのTime.new(年、月、日)とTime.local(年、月、日)の差
- 23. Bigqueryの完全な日付(年月日)〜(年月)
- 24. 誕生日を日、月、年のドロップダウンリストから挿入します
- 25. 正規表現が必要です例:年/月/日/年の場合のこの書式(年/月/日/ F)
- 26. Javascriptの生年月日 - 選択を防止する2月30日
- 27. sqlチェック制約の生年月日からの年齢
- 28. パンダ日時スライシング:junkdf.ix [ '2015年8月3日' '2015年8月6日']
- 29. 年月日から年月を数えてください
- 30. ラテックス日付日時計算月日年
誰? –
私は恐竜の化石をカタログ化するときに同じ問題を抱えていました( –
MySQLの 'datetime'型はその問題を回避しますが、化石の日付を格納することはできません。多分、MSSQL(またはあなたが使っているもの)に似たものがありますか? – Bojangles