sql >> データベース >  >> RDS >> Mysql

データベースレコードのカウントの保存は冗長ですか?

    タイトルの質問に答えます。はい、それは冗長ですが、それを行うべきかどうかは状況によって異なります。

    パフォーマンスの問題がわかっている場合を除いて、アプリケーションでその場でカウントと合計を計算し、保存しないでください。つまり、他に選択肢がない限り、計算値を保存しないでください。

    ほとんどの場合、これに頼る必要はなく、そうすべきではありません。

    計算値を保存する必要がある場合は、次のようにします。

    • インクリメントして最新の状態に保たないでください。更新するたびに、すべてのデータからカウント/合計を再計算します。
    • 更新があまりない場合は、コードを更新トリガーに入れて、カウント/合計を最新の状態に保ちます。
    • データベースの冗長性に関する問題は、数値が一致しない場合、どちらが信頼できるかわからないことです。ドキュメントに、ソースデータが一致せず、上書きされる可能性がある場合は、ソースデータが信頼できるソースであることに注意してください。


    1. SQLでのテーブルのピボット(クロス集計/クロス集計)

    2. AnySQLMaestroをSalesforce.comに接続する

    3. リソース番号とは何ですか?

    4. sp_updatestatsが実際に更新するものを理解する