DBには、ユーザーの詳細を格納するテーブルと、チームの詳細を格納するテーブルと、どのチームがユーザーに属しているかを認識するためのユーザーとチームIDを格納するテーブルがあります。このクエリを正しく使用するには?
選択したグループに属しているDBからすべてのユーザーを取得するようになりました。そして、私はこのようなことをやっている:
SELECT u.name, u.image FROM groups g, user_groups ug, users u WHERE
g.id = ? AND ug.group_id = g.id
しかし、私は望んでいた結果を得ていませんよ。あなたは上記の添付画像で見ることができるように、私は1つのグループに2人のユーザーを持っているので、私は私の応答に二つのレコードを期待していますが、これは私が反応して取得していますものです:
JSON response:
{
"error": false,
"users": [
{
"name": "Dušan Dimitrijević", // This is the user from selected group, but i'm getting duplicate record
"image": "http://192.168.42.6:8081/timster/uploads/user_images/%2018.png"
},
{
"name": "Dušan Dimitrijević",
"image": "http://192.168.42.6:8081/timster/uploads/user_images/%2018.png"
},
{
"name": "Miroslav", // And this one too, but also duplicated
"image": "null"
},
{
"name": "Miroslav",
"image": "null"
},
{
"name": "Pera Peric",
"image": "null"
},
{
"name": "Pera Peric",
"image": "null"
},
{
"name": "Marko Markovic",
"image": "null"
},
{
"name": "Marko Markovic",
"image": "null"
},
{
"name": "Stefan Dimitrijevic",
"image": "null"
},
{
"name": "Stefan Dimitrijevic",
"image": "null"
},
{
"name": "Petar Nikolic",
"image": "null"
},
{
"name": "Petar Nikolic",
"image": "null"
},
{
"name": "Nikola Ristic",
"image": "null"
},
{
"name": "Nikola Ristic",
"image": "null"
}
]
}
だから、私は私の質問SELECTで何か間違っていると思います。
名前、画像、ユーザー、グループ。あなたが何を言っているのか分かりません。 – Strawberry
ユーザーは2つのグループに所属しています。結果にグループIDを含めるようにクエリを変更した場合、結果は実際に重複していないことがわかります – dimlucas
'ug'テーブルを削除する必要があります。あなたの2つのリンクを 'users'データベースに入れてください。その後、 'u.group_id = g.id'を実行して関連するチームのみを取得することができます – tektiv