研究員的代碼中,我有一個表,其中包含每個具有日期列的行數。我想選擇最近6個最近的行。我是這樣做的:重新排序SELECT LIMIT查詢的輸出
SELECT *
FROM `Stats`
WHERE `ProjectID` = ?
ORDER BY `StatsDate` DESC
LIMIT 6
這將返回我需要的行,但它們在DESC日期順序返回。我想要的是ASC日期順序中的最後6行。我如何重新排序SELECT的輸出?有任何想法嗎?
感謝
研究員的代碼中,我有一個表,其中包含每個具有日期列的行數。我想選擇最近6個最近的行。我是這樣做的:重新排序SELECT LIMIT查詢的輸出
SELECT *
FROM `Stats`
WHERE `ProjectID` = ?
ORDER BY `StatsDate` DESC
LIMIT 6
這將返回我需要的行,但它們在DESC日期順序返回。我想要的是ASC日期順序中的最後6行。我如何重新排序SELECT的輸出?有任何想法嗎?
感謝
SELECT *
FROM (
SELECT *
FROM `Stats`
WHERE `ProjectID` = ?
ORDER BY `StatsDate` DESC
LIMIT 6
) s
ORDER BY s.StatsDate
:)非常感謝超級提示響應!乾杯!!!! – djeetee
環繞在以不同的順序的外部查詢和命令查詢。
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;
在對方第二秒內有3個幾乎相同的答案... –
的可能重複[SQL拉由列排序的數據進行排序,然後從另一個角度(http://stackoverflow.com/questions/4151077/sql-to-pull-data-sorted-by -column-then-sort-it-another-way) – Johan