オーディオクリップ、写真、ビデオなどのさまざまなメディアをアップロードしてオンラインストーリーを作成できるWebサイトにリレーショナルMySQLデータベースを使用しています。このサイトには、ユーザーが作成、表示、編集できるパーソナルスペースへのログイン機能があります。ストーリー。この質問では、データベースに4つのテーブルがあるとします。メモリボックス(ストーリーに関するメタ情報、つまりタイトル、日付、説明)、オーディオ、写真、ビデオ(後者の3つでは、すべてのメディアがメモリボックス内の1つのストーリーに接続されています)表-個々のメディアファイルは、メモリボックスIDの列によってストーリーにリンクされます)。
PHPを使用して、ストーリーに関連付けられているすべてのメディアとストーリーのメタデータを選択し、XMLファイルにエクスポートしています。XMLから、jqueryを使用して、最初にストーリー(ストーリーのタイトルが付いたある種のアイコン)を表示し、次にストーリーアイコンをクリックすると、すべてのメディアをストーリービューに表示します。
私が欲しいのは、すべてのメディアファイルを1つのストーリー(およびそのメタデータ)だけに関連付けることです。私の問題は、必要なXML結果を完全に取得できず、問題がクエリにあるのかデータベース構造にあるのかわからないことです。IDSが一致するすべての場所を選択しようとしましたが、メディアファイルごとに個別のエントリの長いリストが表示されます。また、LEFT JOINを使用して、すべてをメモリボックスIDに関連付けようとしましたが、1つのIDに対して複数のエントリを取得します。GROUP BYを試しましたが、メディアデータが1行しか表示されませんでした。
これを実行できるクエリはありますか、それともデータベース構造を再考する必要がありますか?
ありがとう、シェリル