小さな問題が発生しました。まず、「グループ」、「ページ」、および結合テーブル「サブスクリプション」というテーブルがあります。
この背後にある考え方は、グループ (ユーザーを含む) がページを購読できるということです。ユーザーは、所属するグループにページをサブスクリプションとして追加できます (多対多)。情報: ユーザーは複数のグループに属することができます。
UIの一部として、それについてのリストを作りたいです。すべてのグループから、関連するページが必要です。例: (グループ: ... ページ: -.... , -.... | グループ: ... ページ: -...., -.... など)
SQL クエリは問題ではありません。
SELECT Groups.name, pages.name, pages.id
FROM Groups
JOIN subscriptions ON groups.id = subscriptions.group_id
JOIN pages ON subscriptions.page_id = pages.id
WHERE groups.id IN ('1', '2') // de values 1 & 2 zijn voorbeelden en stellen de groepen id's voor waarin de huidige gebruiker zit.
結果は、たとえば次のようになります。
group name ---- page name ---- page id
group1 -------- page1 --------- 1
group1 -------- page2 --------- 2
group2 -------- page1 --------- 1
私の質問は; 単一のグループ名とそのグループに関連するすべてのページを取得する (html) リストを取得するにはどうすればよいですか? (私が前に述べた例のように)。PHPソリューションが必要です。(私は Zend フレームワークを使用していますが、私が望むトリックを行うソリューションが Zend で見つかりませんでした)
または、グループごとに 1 つのクエリを実行する必要がありますか? それは避けたいところですが..
私はこの mysql と php の世界に慣れていないので、すべてのヘルプが割り当てられる価値があります! ありがとう。:)