Mysql - 选择播放级别的所有可用级别和用户分数

时间:2013-12-24 06:59:13

标签: mysql

我有用户表,级别表和users_levels表。

假设有10个级别。我想加载游戏页面中的所有10个级别。假设用户只玩了5个等级,我希望得到这5个等级。

level_id user_score

1 100  
2 200  
3 NULL  
4 NULL  
5 NULL  
..  

对于此输出,users_levels将只为用户提供两个数据。我尝试了OUTER JOIN但是当我添加user_id =?时,它什么也没有返回。

SELECT * 
FROM levels
LEFT OUTER JOIN users_levels ON level_id = FK_level_id
WHERE user_id =1
LIMIT 0 , 30

1 个答案:

答案 0 :(得分:0)

user_id = 1移动到连接条件中。

SELECT * 
FROM levels
LEFT OUTER JOIN users_levels ON level_id = FK_level_id AND user_id = 1
LIMIT 0 , 30

使用where限制联接表中的数据会将outer联接转换为inner联接。