一般的なアプリケーションでは、timestamp、datetime、int 型を使用して時間形式を保存します。 int (javaBean の Integer または int に相当) 1. 4バイトを占有する 2. インデックス作成後、クエリ速度が速くなる 3. 条件範囲検索は、 4. MySQLが提供する時間関数が使用できない 結論: 多数の時間範囲クエリを必要とするデータテーブルに適しています datetime (日付型は javaBean で使用されます) 1. 8バイトを占有する 2. 空の値を許可し、値をカスタマイズできますが、システムは値を自動的に変更しません。 3. 実際の形式のストレージ(保存したものを保存し、保存したものと同じものを取得します。) 4. TIMEZONE と変換を扱うものは何もありません。 5. デフォルト値を設定することはできないため、null 値が許可されていない場合は、データを正常に挿入するには、datetime フィールドの値を手動で指定する必要があります。 6. datetime フィールドの値を指定するときに、now() 変数を使用してシステムの現在の時刻を自動的に挿入できます。 結論: datetime 型は、レコード内の他のフィールドの値をどのように変更しても、手動で変更しない限り datetime フィールドの値は変更されないため、データの元の作成時刻を記録するのに適しています。 タイムスタンプ (JavaBean の日付またはタイムスタンプ型) 1. 4バイトを占有する 2. 空の値は許可されますが、カスタム値は許可されないため、空の値は意味を持ちません。 3. TIMESTAMP 値は 1970 年より前または 2037 年より後にすることはできません。つまり、「1968-01-01」などの日付は、DATETIME または DATE 値には有効ですが、TIMESTAMP 値には有効ではなく、そのようなオブジェクトに割り当てられると 0 に変換されます。 4. 値はUTC形式で保存されます(ミリ秒数を格納します) 5. タイムゾーン変換: 保存時に現在のタイムゾーンを変換し、取得時に現在のタイムゾーンに戻します。 6. デフォルト値は CURRENT_TIMESTAMP() で、これは実際には現在のシステム時刻です。 7. データベースは自動的に値を変更するため、レコードを挿入するときにタイムスタンプ フィールドの名前とタイムスタンプ フィールドの値を指定する必要はありません。テーブルを設計するときにタイムスタンプ フィールドを追加するだけで済みます。挿入後、フィールドの値は自動的に現在のシステム時間になります。 8. 将来いつでもテーブル内のレコードを変更すると、対応するレコードのタイムスタンプ値が現在のシステム時間に自動的に更新されます。 結論: タイムスタンプ型は、レコード内の他のフィールドの値を変更すると、タイムスタンプ フィールドの値が自動的に更新されるため、データの最終変更時刻を記録するのに適しています。 要約する 上記は、MySQL で時間と日付の型を保存する選択問題の分析に関するものです。興味のある方は、MySQL のステートメント サブクエリの効率最適化スキルの例、MYSQL サブクエリとネストされたクエリの最適化の例の分析、サブクエリの代わりに接続 (結合) を使用した MySQL の最適化などを参照してください。質問がある場合は、いつでもメッセージを残していただければ、編集者がすぐに返信します。これが皆さんのお役に立てば幸いです。 以下もご興味があるかもしれません:
|
>>: mysqlパラメータsql_safe_updatesを使用して更新/削除範囲を制限する方法の詳細な説明
どの企業もユーザーベースを拡大したいのであれば、ユーザーの操作データを収集・分析する必要があり、その...
Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュー...
1. まずMySqlの公式サイトからダウンロードします参考: https://www.jb51.ne...
目次序文: 1. インデックスメソッドを作成する2. インデックスを作成するために必要な権限序文: ...
絶対、相対、固定位置の位置決めabsolue: 絶対配置。上、下、左、右を使用して、配置先の親要素に...
1. 50と93では鏡像が消える [root@h50 /]# df -h ファイルシステムの使用済み...
目次背景なぜエラー処理が必要なのでしょうか? async await より適切なエラー処理まとめ要約...
注意: この方法は、Webkit ベースのブラウザにのみ適用されます。ブラウザのスクロールバーが広す...
フレックスレイアウト定義: Flexレイアウトの要素は、 Flex 、または略して「コンテナー」と呼...
mysqlのリモートアクセス権を有効にするデフォルトでは、MySQL ユーザーにはリモート アクセス...
この記事の主な内容は次のとおりです。 1. 閉じるボタン2.キャレット3. フローティングを素早く設...
この質問は非常に奇妙なので、あまり多くを語らずにコードに直接進みます。 .g-ダイアログラッパー{ ...
<スタイル タイプ="text/css">コードをコピーコードは次の...
目次1. マスタースレーブレプリケーションマスタースレーブレプリケーション3スレッドマスタースレーブ...
最近、プロジェクトで nginx を使用し、バックエンドで Java を使用しました。バックエンドで...