2013-07-27 79 views
0

我在我的网站上得到了一个表,用户排名栏,排名是一个数字,我想选择最高排名数字的3个用户,所以我期待和搜索和最好的,只要我我认为查询我发现的是:Link(第二个查询在正确的答案),但我不明白的查询,如果任何人都可以解释一步一步的(例如我不明白这一行FROM table li从表是好的但是谁是李,我从来没有见过这种语法),或者建议更好的查询我会非常感谢,谢谢大家,祝你有美好的一天。MySQL,最大值3

+0

http://dev.mysql.com/doc/refman/5.5/en/select.html#idp67591536 – CBroe

回答

2

如果你想在这三个用户具有最高排名的别名,这样的事情可能工作:

select u.* 
from users u 
order by rank desc 
limit 3; 
5

li是为the table

SELECT x.* 
    FROM my_table AS x <-- x is an alias for `my_table` 
WHERE ... 

AS关键字是可选的,并且经常省略

+0

Hoooooooo,谢谢,我不知道。 –

+1

@Strawberry。 。 。为了让事情更加复杂,如果我没有记错,“as”通常是可选的。但是,它在Access中是必需的,它在Oracle中是被禁止的。 (我省略了表别名,所以当我看到'as'时,我知道它是列别名。) –

1

基本上它是从同一个表中做多个子查询用作中间结果和诸如“li”之类的名称是同一个表的别名,以确保列引用属于正确的子查询。在这个例子中,你会使用真实的表格名称来显示“表格”。

+0

谢谢你的解释交钥匙。 –