質問

ユーザーのテーブルと友達のテーブルがあります。 ID 1を持つユーザーには4人の友人がいます(ID 2,3,4,13)。ユーザーの名前と姓を取得したい2,3,4、13。すべての友達のためにクエリ。左、関節、右の関節、単純な関節、お尻、onsなどの方法と使用方法がわかりませんでした...

enter image description here

役に立ちましたか?

解決

ユーザーのために友達の名前を取得したい場合は、おそらくそうなことを試してみてください。

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)
ライセンス: CC-BY-SA帰属
所属していません dba.stackexchange
scroll top