1

1対nの関係にある2つのmySqlテーブルがあります。最初のテーブルでは、2 番目のテーブルのインスタンス数を表すフィールドを設定し、それを更新し続ける必要があります。これを達成するための最良の方法は何ですか?2 番目のテーブルにレコードを挿入/削除するたびにカウンターを更新する必要がありますか、それとも自動的に行う方法はありますか?

4

2 に答える 2

1

最初のテーブルのフィールドとして使用するには、2 番目のテーブルでレコードを挿入/削除するたびにカウンターを更新する必要があります。

または、データを取得する必要がある場合は、2 番目のテーブルをクエリして、最初のテーブルと結合し、最初のテーブルの Id でフィルター処理することができます。最初のテーブルからレコードを取得するたびにデータを必要とせず、2 番目のテーブルからロットを挿入/削除する場合は、これがより効率的なルートになります。

于 2013-02-12T08:14:50.300 に答える
0

@Najzero が提案する実行時クエリが好ましくない場合はView、このクエリを使用して作成し、からデータを取得することを検討してください。View

また、挿入/削除時に毎回フィールドを更新する必要がある場合は、TriggerINSERT および DELETE 操作で作成することを検討できます。

于 2013-02-12T09:10:20.830 に答える