Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 重新排序SELECT LIMIT查询的输出_Mysql_Sorting - Fatal编程技术网

Mysql 重新排序SELECT LIMIT查询的输出

Mysql 重新排序SELECT LIMIT查询的输出,mysql,sorting,Mysql,Sorting,各位程序员,我有一个表,其中包含许多行,每个行都有一个日期列。我想选择最近的6行。我可以这样做: SELECT * FROM `Stats` WHERE `ProjectID` = ? ORDER BY `StatsDate` DESC LIMIT 6 这将返回我需要的行,但它们是按DESC date顺序返回的。我想要的是ASC日期顺序中的最后6行。如何对SELECT的输出进行重新排序?有什么想法吗 谢谢将查询包围在外部查询中,并以不同的顺序排列 SELECT * FROM

各位程序员,我有一个表,其中包含许多行,每个行都有一个日期列。我想选择最近的6行。我可以这样做:

SELECT * 
  FROM `Stats` 
  WHERE `ProjectID` = ?
  ORDER BY `StatsDate` DESC
  LIMIT 6
这将返回我需要的行,但它们是按DESC date顺序返回的。我想要的是ASC日期顺序中的最后6行。如何对SELECT的输出进行重新排序?有什么想法吗


谢谢

将查询包围在外部查询中,并以不同的顺序排列

SELECT * FROM
(
  SELECT * 
    FROM `Stats` 
    WHERE `ProjectID` = ?
    ORDER BY `StatsDate` DESC
    LIMIT 6
 ) s 
 ORDER BY `StatsDate` ASC 
可能重复的
SELECT * FROM
(
  SELECT * 
    FROM `Stats` 
    WHERE `ProjectID` = ?
    ORDER BY `StatsDate` DESC
    LIMIT 6
 ) s 
 ORDER BY `StatsDate` ASC 
SELECT *
FROM (
FROM `Stats` 
WHERE `ProjectID` = ?
ORDER BY `StatsDate` DESC
LIMIT 6
) as t
ORDER BY t.`StatsDate` ASC;