0

PHPとMySQLを使用しています。

ユーザーの 1 人が特定のアクションを実行するたびに、UNIX タイム スタンプを保存する必要があります。時間単位の詳細レベルだけが必要です。(integer)(time()/3600)フル タイム スタンプの代わりに次のようなものを保存してストレージを削減してはならない理由はありますか? ユーザーごとのセッションごとに、このタイムスタンプに対して複数のクエリを実行する必要があります。

INTタイムスタンプをそのまま保存する場合は、MySQLに として保存する予定です。ユーザー ID とタイム スタンプを組み合わせたインデックスを作成する必要があります。

タイムスタンプを時間数に変換するとMEDIUMINT、MySQL に として保存できます。

4

2 に答える 2

1

良い。1 つの理由: タイムスタンプが文字列として保存されない限り、または 2038 年を過ぎていない限り、実際には使用するスペースが少なくなることはありません。

于 2012-10-13T22:12:20.493 に答える
0

一般に、テーブルにタイムスタンプ データの挿入が 500 万回未満の場合、これによりデータベースのスペースが削減されます。他の方法では必要ありませんでしたが、パフォーマンスのために、タイムスタンプまたは日付/時刻の代わりにデータベースに符号なし (10) 整数として保存します。これにより、データのインデックス作成と検索が高速になります。

于 2012-10-13T22:18:57.733 に答える