用户
user_types
1 =管理员
2 =分配器
3 =零售商
user_id | user_name| user_type| user_under|
---------------------------------------------------------------------------
1 | user1 | 1 | 0
2 | user2 | 3 | 2
3 | user3 | 2 | 0
4 | user4 | 3 | 2
5 | user5 | 3 | 2
充值
rech_id | user_id| amount|
---------------------------------------------------------------------------
1 | 2 | 249
2 | 4 | 495
3 | 5 | 175
想要的结果
rech_id | user_id| user_under|
---------------------------------------------------------------------------
1 | 2 | user3
2 | 4 | user3
3 | 5 | user3
我想通过加入充值表来列出所有用户分发者名称
答案 0 :(得分:1)
您需要使用join获得此结果。我不明白您是否提出质疑,但您需要使用以下代码:
select rech_id,user_id,user_under from users INNER JOIN recharge ON users.user_id=recharge.user_id;
答案 1 :(得分:1)
如您所见,在输出表中,您只需要两个用户都存在并充值的user_id,因此应用内部联接。 接下来,
select re.rech_id,re.user_id,concat("user",us.user_type) as user_under
from users us inner join recharge re USING (user_id)
答案 2 :(得分:1)
请尝试解决您的问题,不要只是在这里问。 无论如何,我认为这可以解决您的问题
SELECT * FROM users AS u INNER JOIN recharge AS r on r.user_id = u.user_id
GROUP BY u.user_name;