0

私は、ユーザーの情報とアクティビティを表示する比較的単純なプログラムを持っています。プログラムのアーキテクチャにより、さまざまな方法で多くのさまざまなデータを参照する必要があります。

たとえば、異なるグループまたは複数のグループ内で異なるレベルのステータスを持つことができるユーザーがいて、これらのグループは独自のステータスを持つことができます。私の質問は、大量のデータを参照するためのベストプラクティスと、コードの速度/ロジックについてです。

  • オプションA-データベース内に複数のインスタンスデータがあり、これを参照し、単純なステートメントとクエリを使用して、いくつかのテーブルでこれを個別に更新します。
  • オプションB-多くのネストされたクエリとifステートメントを使用して複数ビットのデータを取得します

簡単に言えば、ループ内やifステートメント内でネストされたクエリを多数使用するのが最善ですか、それともデータベース内のさまざまなデータセットを分割して個別に参照するのが最善ですか?私は技術的な魔法ではなく、信頼性とスピードを求めています。

これは私のプログラムに非常に固有である可能性があることは知っていますが、例に深く踏み込むことなく、そこにいる開発者の一般的な意見と彼らの経験を知りたいと思います。

4

1 に答える 1

0

結合は、操作の途中で大量の一時テーブルが生成されるため、コストが高くなる可能性があります。ただし、この場合、正確なデータ抽出はより論理的です。これは、データ モデル、テーブル、参照、挿入率、更新率、テーブルのクエリ率に大きく依存します。結合を使用して作成する必要があるクエリもあれば、プロシージャを使用して作成した方がよいクエリもあります。

于 2012-06-05T12:03:50.897 に答える