回答編集履歴
3
推敲
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
ただ、期間を指定するような場合に、開始~終了に無期限のような設定は行えず9999/12/31とか、別に無期限用のフラグを持たせるというのはなんとなくしっくりこなかったのです。
|
7
7
|
|
8
|
-
ある時、自治体のデータ扱うことがあって、その時のデータは項目が分かれており、月や日が'不明'として入力されていました。
|
8
|
+
ある時、自治体のデータを扱うことがあって、その時のデータは項目が分かれており、月や日が'不明'として入力されていました。
|
9
9
|
年・月・日を分けた上でさらに判断が必要になるのは明らかに効率が悪そうです。
|
10
10
|
困った私は、数値型でyyyymmddという形式でmmやddは00や99を不明などに割り当てるという方法を試してみました。
|
11
11
|
|
@@ -15,7 +15,7 @@
|
|
15
15
|
数値型に書式を設定するので、0000/00/00というようにするだけです。
|
16
16
|
|
17
17
|
逆に、SQLでの結合や抽出の条件するような場合に判定をする必要が無くこれが非常に効率的でした。
|
18
|
-
開始~終了の様な期間で無制限は
|
18
|
+
開始~終了の様な期間で無制限は0~99999999と設定すればよく、判定が必要な場合も値で可能ですしね。
|
19
19
|
|
20
20
|
あ、文字型にするのは数値型より遅くなるのでハナから考えていませんでした。
|
21
21
|
という訳で、日付を扱うのは数値型最強説でした。
|
2
追記
answer
CHANGED
@@ -18,4 +18,5 @@
|
|
18
18
|
開始~終了の様な期間で無制限は00000000~99999999と設定すればよく、判定が必要な場合も値で可能ですしね。
|
19
19
|
|
20
20
|
あ、文字型にするのは数値型より遅くなるのでハナから考えていませんでした。
|
21
|
-
という訳で、日付を扱うのは数値型最強説でした。
|
21
|
+
という訳で、日付を扱うのは数値型最強説でした。
|
22
|
+
但し、ログのようなデータ(作成日とか更新日とかの記録系)は日付型の方が良いので、制御に使う項目に限定ですけど。
|
1
推敲
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
一般的かどうかは知りませんが、私は2ですね。但し数値型です。
|
2
2
|
なぜそうしているかを経緯を交えて説明します。
|
3
3
|
|
4
|
-
最初の頃は私は、日付は日付型とし
|
4
|
+
最初の頃は私は、日付は日付型として管理する方が日付型に関する色々な関数が直接使えるし効率が良いと考えていました。
|
5
5
|
|
6
6
|
ただ、期間を指定するような場合に、開始~終了に無期限のような設定は行えず9999/12/31とか、別に無期限用のフラグを持たせるというのはなんとなくしっくりこなかったのです。
|
7
7
|
|
@@ -10,7 +10,7 @@
|
|
10
10
|
困った私は、数値型でyyyymmddという形式でmmやddは00や99を不明などに割り当てるという方法を試してみました。
|
11
11
|
|
12
12
|
これが、意外に最強でした。
|
13
|
-
日付の書式に変換が必要な場面はありましたが、それは画面や帳票やCSVなどに出力する場合に単に書式を設定るような類です。
|
13
|
+
日付の書式に変換が必要な場面はありましたが、それは画面や帳票やCSVなどに出力する場合に単に書式を設定するような類です。
|
14
14
|
例えばyyyy/mm/ddの様な書式なのですが、書式というだけで日付型に変換する必要はありません。
|
15
15
|
数値型に書式を設定するので、0000/00/00というようにするだけです。
|
16
16
|
|