jef*_*ial 1 php mysql reference
我有以下表格
table "users"
------------------------------
user_id name email
------------------------------
1 joe joe@doe.com
2 jane jane@doe.com
3 john john@doe.com
table "code_to_user_ref"
---------------------------------
ref_id user_id code_id
---------------------------------
1 1 1
2 1 2
3 2 3
4 3 4
table "codes"
------------------
code_id code
------------------
1 xC1@3$
2 Cv@3$5
3 Vb#4%6
4 Bn%6&8
Run Code Online (Sandbox Code Playgroud)
基本上,该users
表是我所有注册会员的所在地.该codes
表只是外部使用的有效激活码列表.该code_to_user_ref
表将每个用户映射到他们拥有的代码.
我想要做的是像这样回应一个表:
------------------------------
Name Email Code/s owned
------------------------------
joe joe@... xC1@3$, Cv@3$5
jane jane@... Vb#4%6
john john@... Bn%6&8
Run Code Online (Sandbox Code Playgroud)
我该如何写出这样的查询?
尝试:
SELECT a.name,a.email, GROUP_CONCAT(c.code)
FROM users a
JOIN code_to_user_ref b ON a.user_id = b.user_id
JOIN codes c ON b.code_id = c.code_id
GROUP BY a.name,a.email
Run Code Online (Sandbox Code Playgroud)
结果将是:
| NAME | EMAIL | CODE/S OWNED |
|------|--------------|---------------|
| jane | jane@doe.com | Vb#4%6 |
| joe | joe@doe.com | Cv@3$5,xC1@3$ |
| john | john@doe.com | Bn%6&8 |
Run Code Online (Sandbox Code Playgroud)
这是SQLFiddle.
归档时间: |
|
查看次数: |
3330 次 |
最近记录: |