以下は、この質問の目的のために、私の問題を単純化したものです。私は2つのテーブルを持っています。
テーブルプロファイル:
TABLE profile
profile_id | first_name | last_name
1 | David | Battery
2 | John | Motor
テーブルknown_names:
TABLE known_names
profile_id | first_name
1 | A
1 | B
1 | C
2 | X
2 | Y
2 | X
私が達成しようとしているのは、profile.profile_id = known_names.profile_idの場合、profile.last_nameと一緒にknown_names.first_nameを出力することです。しかし、結果の行の1つにprofile.first_nameとprofile.last_nameも出力したいと思います。
したがって、クエリは次のようになります(構文が間違っているため、これを行うための正しいクエリを探しています)。
SELECT profile_id, first_name, last_name FROM profile CROSS JOIN known_names ON known_names.profile_id = profile.profile_id WHERE profile.first_name = 'David'
結果の例は次のとおりです。
profile_id | first_name | last_name
1 | David | Battery
1 | A | Battery
1 | B | Battery
1 | C | Battery
それを実現できるクエリを作成するにはどうすればよいですか?