0

我有 2 个名为“user”和“score”的表
我想按用户名列出用户顺序,用户名应该在 score 表中

用户表:

 id Username
 1  D
 2  B
 3  F
 4  A
 5  E
 6  C

成绩表:

 Scorid UserID score
 1      3      156
 2      4      202
 3      4      890
 4      6      346
 5      3      657
 6      5      658
 7      5      700
 8      5      263
 9      2      1089
 10     3      745

我想要一个这样的列表:

 UserName score
 A        890
 A        202
 B        1089
 C        346
 E        700
 E        658
 E        263
 F        745
 F        657
 F        156

*列表必须按用户名排序,并且分数也在他们的用户名组中排序
*用户“D”未列出,因为它没有任何分数
*用户可能有多个分数

我正在用 PHP 编写,我正在使用 mysql

哪个查询在一个查询中给出此列表?

4

3 回答 3

0
Select Username, score 
from   user, score 
where  score.UserID = user.id and 
       score > 0
order  by username, score
于 2013-03-28T02:00:23.167 回答
0
SELECT
user.username,
score.score
FROM user
LEFT JOIN score
ON score.UserID = user.id
于 2013-03-28T02:01:05.687 回答
0

这是您要使用正确名称运行的查询(MySQL)(请注意,我已将您的表名称更改为复数):

SELECT username, score
FROM  `score` 
JOIN  `user` ON id = UserID
ORDER BY username ASC , score DESC 
于 2013-03-28T02:03:14.353 回答