Php 如果在分数表中有分数,如何获得按用户名排序的列表?

Php 如果在分数表中有分数,如何获得按用户名排序的列表?,php,sql-order-by,mysql,Php,Sql Order By,Mysql,我有两个名为“用户”和“分数”的表格 我想按用户名列出用户顺序,用户名应该在分数表中 用户表: 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

我有两个名为“用户”和“分数”的表格
我想按用户名列出用户顺序,用户名应该在分数表中

用户表:

 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


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

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

Select Username, score 
from   user, score 
where  score.UserID = user.id and 
       score > 0
order  by username, score

接受的答案是错误的,因为默认顺序是升序,所以202将高于890。。。这就是为什么我在回答中添加了DESC。当人们没有正确地检查答案就接受答案时,这有点可笑。(我的英语很差)你是对的,这是我的错误,我很快就接受了,并将所有答案混合到我的代码中。
SELECT
user.username,
score.score
FROM user
LEFT JOIN score
ON score.UserID = user.id
SELECT username, score
FROM  `score` 
JOIN  `user` ON id = UserID
ORDER BY username ASC , score DESC