0

コーラス管理データベースを構築しており、特定のクエリを作成する必要があります。(PHP での MySQL プログラミング。)

名簿テーブルによって管理される多対多の関係を持つ歌手のテーブルとイベントのテーブルがあります。各名簿レコードは、1 つの SingerID と 1 つの EventID にリンクしています。次の形式のブラウズ テーブルを作成したいと思います。

問題は、シンガーによってはイベントがリンクされていない場合があることです。

単一の MySQL クエリでこれを行う方法はありますか? または、すべての歌手を一覧表示する 1 つのクエリと、各歌手のすべてのイベントを一覧表示する 2 番目のクエリを記述し、2 番目のクエリを調べて、最初と最後のレコード (最後のクエリを日付でソートすると仮定)?

4

2 に答える 2

1

LEFT JOINを使用して、存在する必要がないようにします

于 2012-08-30T16:00:12.390 に答える
0

私もマイクのように、クエリは次のようにすべきだと思います

SELECT * FROM singer
LEFT OUTER JOIN roster ON singer.id =roster.singerid
INNER JOIN event ON event.id=roster.eventid
ORDER BY singer.name,singer.date    
于 2012-08-30T16:02:50.153 に答える