ORDER BY在Mysql中添加了DESC LIMIT

时间:2009-11-18 04:24:08

标签: mysql command

我在我们的应用程序中看到ORDER BY在Mysql命令中添加了DESC LIMIT 我不知道ORDER BY的手段是否已添加到DESC LIMIT 那么什么是ORDER BY添加到DESC LIMIT

2 个答案:

答案 0 :(得分:2)

这意味着结果将按名称addedOn的列按降序排序,并且返回的行数将限制为单词LIMIT后显示的数字。

答案 1 :(得分:2)

这是按addOn的降序排序,然后将结果限制为LIMIT后的行数。

限制的定义来自here

  

可以使用LIMIT子句   约束返回的行数   通过SELECT语句。 LIMIT需要   一个或两个数字参数,其中   必须都是非负整数   常数(使用时除外)   语句)。

使用两个参数,第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。初始行的偏移量为0(不是1):

SELECT * FROM tbl LIMIT 5,10;  # Retrieve rows 6-15

要从特定偏移量检索所有行直到结果集的末尾,可以使用一些大数字作为第二个参数。此语句检索从第96行到最后一行的所有行:

SELECT * FROM tbl LIMIT 95,18446744073709551615;

使用一个参数,该值指定从结果集开头返回的行数:

SELECT * FROM tbl LIMIT 5;     # Retrieve first 5 rows

换句话说,LIMIT row_count相当于LIMIT 0,row_count。 对于预准备语句,您可以使用占位符(从MySQL 5.0.7版开始支持)。以下语句将从tbl表中返回一行:

SET @a=1;
PREPARE STMT FROM 'SELECT * FROM tbl LIMIT ?';
EXECUTE STMT USING @a;

以下语句将返回tbl表中的第二行到第六行:

SET @skip=1; SET @numrows=5;
PREPARE STMT FROM 'SELECT * FROM tbl LIMIT ?, ?';
EXECUTE STMT USING @skip, @numrows;

为了与PostgreSQL兼容,MySQL还支持LIMIT row_count OFFSET偏移语法。

如果LIMIT在子查询中发生并且也在外部查询中应用,则最外面的LIMIT优先。例如,以下语句生成两行,而不是一行:

(SELECT ... LIMIT 1) LIMIT 2;