2

MYSQL で年を表すために SMALLINT(4) と DATETIME のどちらを使用するかを決定しようとしています。

私のテーブルにはモデル年が必要ですが、次のような月や日付でスペースを無駄にしたくありません20xx-01-01 00:00:00

したがって、次のように年を表すスペースを節約できます。

year SMALLINT(4);

大幅な節約ではない場合は、DATETIME を使用しても問題ありません。$_POST4 桁の年を使用するとスペースを節約できる場合、4 桁の年を DATETIME として使用するにはどうすればよいですか?

4

4 に答える 4

6

MySQL には年のデータ型があります - http://dev.mysql.com/doc/refman/5.1/en/year.html

YEAR 型は、年の値を表すために使用される 1 バイトの型です。YEAR(4) または YEAR(2) として宣言して、4 文字または 2 文字の表示幅を指定できます。幅が指定されていない場合、デフォルトは 4 文字です。

ノート:

YEAR(2) データ型には、使用を選択する前に考慮すべき特定の問題があります。MySQL 5.1.65 の時点で、 YEAR(2) は非推奨です。

可能な範囲: 1901 ~ 2155、または 0000

于 2013-04-21T04:20:11.730 に答える
1

あなたが使うだろうmktime(date(Y), 0, 0, 0, 0, 0)

于 2013-04-21T04:18:39.093 に答える