私はEnterprise
モデルを持っています:
name - VARCHAR 255
Candidat
モデル:
first_name - VARCHAR 255
last_name - VARCHAR 255
そしてType
モデル:
name - VARCHAR 255
各企業は、関心のある 1 つ以上のタイプを選択できます。各候補者も同様に選択できます。
現在ログインしている企業といくつかのタイプを共有するすべての候補のリストを表示しようとしています。まったく同じタイプである必要はなく、一部を共有するだけです。
候補とタイプ、および企業とタイプの間のリンクを保持するために、2 つの結合テーブルを使用しています。
id - INT
candidat_id - INT
type_id - INT
id - INT
enterprise_id INT
type_id INT
現在使用しているSQLクエリは次のとおりです。
SELECT candidats.* FROM candidats
INNER JOIN candidats_types ON candidats_types.candidat_id = candidats.id
RIGHT JOIN entreprises_types ON entreprises_types.type_id = candidats.type_id
WHERE entreprises_types.entreprise_id = 1
クエリの最後の1は、現在ログインしているエンタープライズの ID であり、テスト目的でハードコードされています。
ただし、これは機能せず、この企業と同じタイプを共有する候補がいくつかあるにもかかわらず、空の配列を返します。
このクエリで何が間違っていますか?