ホームページ >バックエンド開発 >PHPチュートリアル >MVC アーキテクチャを使用する場合、複数のテーブルの結合クエリを実行するにはどうすればよいですか?より良いソリューションを探しています
MVC アーキテクチャを使用する場合に複数のテーブルの結合クエリを実行するにはどうすればよいですか?より良いソリューションを探しています
どのフレームワークでもユーザーのニーズを予測することは不可能です
フレームワークの制約に従ってのみデータを整理できます
複数テーブルのクエリとMVC フレームワークとは何の関係もありません。
一般的に使用されるメソッドをいくつか説明します。
1. シンプルな、ネストされた選択を選択します: select A.c1,A.c2,(select B.c3 from B where A.c4=B.c5) from A where c6 =xxx
2. シンプルな複数のテーブルの選択: A,B から A.c1,A.c2,B.c3,B.c4 を選択します (A.c5=B.c6)
3. フレキシブル結合、左結合、右結合、外部結合
4. Union、Union all
5. 上記の 2 つ以上の混合
実際には、難しい SQL クエリのケースが多く、MVC フレームワークは最適化を支援できません。テーブルクエリの数が非常に多いため、クエリステートメントを最適化するとシステムの効率が向上する可能性があります。
あくまで私の個人的な意見ですので、ご了承ください。
マルチテーブル クエリは MVC フレームワークとは何の関係もありません。
一般的に使用されるメソッドをいくつか説明します。
1. シンプルな、ネストされた選択を選択します: select A.c1,A.c2,(select B.c3 from B where A.c4=B.c5) from A where c6 =xxx
2. 単純に、複数のテーブルを選択します: select A.c1,A.c2,B.c3,B.c4 fr……
どのフレームワークでもユーザーのニーズを予測することは不可能です
フレームワークの制約に従ってデータを整理することしかできません
使用するフレームワークに仕様がある場合は、その仕様に従って記述してください
ない場合は、ネイティブ SQL で十分です。複数テーブルのクエリにも同じことが当てはまります。
使用するフレームワークに仕様がある場合は、その仕様に従って記述してください
ない場合は、ネイティブ SQL で十分です。複数テーブルのクエリにも同じことが当てはまります。
マニュアルを参照してください 6.23 アソシエーション モデル
受注テーブル、顧客テーブル、ユーザー テーブルの関係と同様の質問があります。object- を使用してこの種のテーブル間の関係を設計する方法です。指向性
マニュアルに例はありませんか?
使用するフレームワークに仕様がある場合は、その仕様に従って記述してください
ない場合は、ネイティブ SQL で十分です。複数テーブルのクエリにも同じことが当てはまります。
3階のwangzhlinからの返信を引用します: マルチテーブルクエリはMVCフレームワークとは何の関係もありません。
一般的に使用されるメソッドをいくつか説明します。
1. シンプルな、ネストされた選択を選択します: select A.c1,A.c2,(select B.c3 from B where A.c4=B.c5) from A where c6 =xxx
2. 複数のテーブルを選択するのは簡単です: select A...
Web サイトがそれほど大きくない場合、投稿者はそれをビューにカプセル化し、ビューを直接インスタンス化できます
マルチテーブル結合クエリは mvc と何の関係がありますか?あなたはまだ mvc が何なのかをよく理解していません。
共同クエリをモデルにカプセル化し、コントローラーがそれを呼び出してデータを取得できるようにします。
上の階では、db ビューにカプセル化することも方法だと言われています。 mysql でビューを使用している人はほとんどいないことがわかりました。なぜだか分からない。実際、ビューによって多くの問題を解決できます。たとえば、テーブル構造が更新された後は、ビュー名を変更せずに再作成するだけで済みます。コードを変更する必要はもうありません。もしかしたら、今は新しいテクノロジーが多すぎて、わざわざ古いテクノロジーを使おうとする人がいないのかもしれません。
ご意見ありがとうございます。
実際、私は将来のメンテナンスを容易にするために、この種のテーブルの共同クエリ状況に対するより良いソリューションを作成したいと考えています。クラスを組み合わせるのが最善です。以前のシステムでは独自の SQL を使用していましたが、変更するときに間違いが発生しやすく、業務プロセスを理解するのも困難でした。
テーブル間の関係がクラスで表現できるとしたら、このメソッドはどうなるかわかりません。
マルチテーブル クエリと MVC の関係は何ですか?
私のシステムは MVC を使用して構築されており、システム関数には複数のテーブル クエリが存在します。
そこで私が知りたいのは、MVC アーキテクチャを使用して開発する場合、この種の複数テーブルのクエリに遭遇した場合、元の SELECT を直接使用するべきか、それともビューまたはストアド プロシージャを使用するべきかということです
一般的には、オリジナルの SELECT は、mvc フレームワークまたは cms のソース コードを確認できます。
通常、それは元の SELECT です。mvc フレームワークまたは cms のソースコードを確認してください。