質問
ユーザーのテーブルと友達のテーブルがあります。 ID 1を持つユーザーには4人の友人がいます(ID 2,3,4,13)。ユーザーの名前と姓を取得したい2,3,4、13。すべての友達のためにクエリ。左、関節、右の関節、単純な関節、お尻、onsなどの方法と使用方法がわかりませんでした...
解決
ユーザーのために友達の名前を取得したい場合は、おそらくそうなことを試してみてください。
SELECT u.firstname, u.surname
FROM friend f, user u
WHERE (f.Person1 = 1 OR f.Person2 = 1)
これにより、ユーザーテーブルの名前のリストが取得されます(ユーザーテーブルで友達に名前を付けたものであることを提供します)。
あなたの友人のテーブルには、パートナーシップを構成する友人の外国人キーIDが含まれていると思いますか?
他のヒント
Friendsテーブルには、ユーザーテーブルのIDフィールドに対応するuser_idフィールドがあると仮定しています。
Select name, surname from users
where id in
(select user_id from friends where id=1)
このようにして、「1」がある場所にユーザーIDをプラグインするだけで、それぞれの友達をすべて入手できます。たとえば、ユーザーID 5740のすべての友人の名前と姓を見つけたい場合は、以下を使用します。
Select name, surname from users
where id in
(select user_id from friends where id=5740)
所属していません dba.stackexchange