說我有如下表:mySQL查詢,按最近分組順序排序?
CREATE TABLE `table` (
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
userid INT UNSIGNED NOT NULL,
reference INT,
`datetime` DATETIME
) Engine=InnoDB;
我想從表中,組由DATE參考和順序選擇,同時也爲了利用最新的參考條目?
例如:
reference: 79
datetime: 2011-12-31 00:32:30
reference: 77
datetime: 2011-12-31 00:40:30
reference: 77
datetime: 2011-12-31 00:43:30
reference: 77
datetime: 2011-12-31 00:45:30
reference: 78
datetime: 2011-12-31 00:47:30
他們應該按此順序顯示:78 77(在○點45分之一),79
我現在有這是我的查詢:
SELECT *
FROM `table`
WHERE `userid` = '" . mysql_real_escape_string($id) . "'
GROUP BY `reference`
ORDER BY `datetime` DESC
我怎樣才能使這個查詢工作?所以當已經存在的引用獲得另一個條目時,它會跳轉到列表的頂部?
謝謝
該mysql擴展已過時,並在其棄用的方式。新代碼應該使用mysqli或PDO,它們都具有重要的優點,例如支持預處理語句。 – outis 2012-01-01 12:45:14
可能的重複[在MySQL中選擇GROUP BY的最新行](http://stackoverflow.com/questions/5688063/),[查詢最近的條目與扭曲](http://stackoverflow.com/questions/4125515 /),[MySQL查詢,MAX()+ GROUP BY](http://stackoverflow.com/questions/5657446/),... – outis 2012-01-01 12:59:56