私は2つのテーブルのレッスンと科目を持っています. 各レッスンは 1 つ以上の科目に分類できるため、1 対多の比率で「名前」科目のように分類できます: 数学、科学、社会科
これにより、名前、数学
の名前、科学の
名前、社会科の3 つのレコードが返されます。
これにより、ループして結合し、検索カウントが台無し
になります。代わりに、3 つすべてで 1 つのレコードを取得するにはどうすればよいですか? 私の検索数は正確で、名前が同じかどうかを確認して追加の件名を収集するために追加の PHP コードは必要ありませんか?
基本やってみた
SELECT * FROM lesson INNER JOIN subjects ON subject.id = lesson.subject
しかし、これは3つのエントリになります
編集
私のクエリは、私が導くよりも複雑です。上記の 2 つのテーブルとそれらの関係を追跡する中央のテーブルがあり
ます。このクエリは検索用です。これが私が持っているものです。
SELECT name, subject
FROM lesson As l
INNER JOIN lesson_sub As ls
ON ls.lesson_id = l.id
INNER JOIN subjects As s
ON s.id = ls.subject_id
WHERE CONCAT(l.name, s.subject) LIKE '%KEYWORD%' AND s.id = SUBJECT_ID