如何查询所有数字从最大的位置,然后在查询后添加限制

时间:2013-12-11 08:10:51

标签: mysql

大家好,希望你能帮助我。这是样本表

ID     name      num
1      A         34
2      B         54
3      C         24
4      D         3
5      E         100

首先,我想从最伟大的num中选择所有内容。然后在选择all之后添加另一个查询以将第一个查询限制为3.因此输出应为。

ID     name      num
5      E         100
2      B         54
1      A         24

问题是我不知道如何查询所有内容从最大到最低然后在该查询之后添加限制。由于最大的是在行“5”,如果我说SELECT * FROM table ORDER BY num DESC LIMIT 0,3,查询将停止到第3行并且不会获得最大值,因为最大的数字在第5行。帮助!

3 个答案:

答案 0 :(得分:0)

希望这会有所帮助:

SELECT *
FROM `table`
ORDER BY `table`.`num` DESC
LIMIT 0 , 3

答案 1 :(得分:0)

这应该有效

 select * from test order by num desc limit 3

fiddle demo

答案 2 :(得分:0)

尝试将num列数据类型设置为数字数据类型,例如int,bigint,double等。如果对num列使用varchar / String数据类型,则绝对不能按num排序。