2013-08-24 57 views
2

我想選擇sql表的最後3行。我知道我應該使用SELECT * FROM table ORDER BY DESC LIMIT 3,但是這個代碼的問題是它從最後選擇行。例如,它選擇30,然後是29,然後是28.但是,我需要這種格式:28, 29, 30。任何建議?選擇sql表的最後3行

回答

2

試試這個:

SELECT * FROM (
    SELECT * FROM reset ORDER BY id DESC LIMIT 3 
) as r ORDER BY id 
+0

好吧,它的工作原理,tnx –

0

如何像:

select * from (select * from table order by x desc limit 3) order by x; 
+0

我想這個代碼,但原因的錯誤:'的mysql_query( 「SELECT * FROM(nobuzz選擇從RESET其中username = '$表' ORDER BY ID DESC LIMIT $ resetnum2)ORDER BY ID」);' –

0

嘗試是這樣的: -

SELECT * FROM reset 
    WHERE username = '$table' ORDER BY id ASC LIMIT (FOUND_ROWS() - 3), 3 
+0

我嘗試此代碼,但導致錯誤:'mysql_query(「SELECT * FROM(SELECT nobuzz FROM reset WHERE username ='$ table'ORDER BY id DESC LIMIT $ resetnum2)ORDER BY id」);' –

+0

更新了我的答案!請檢查!!! –

+0

此查詢在mysql_fetch_assoc()中仍然存在錯誤 –

1

我希望這可以幫助您的問題

select * from 
(
select * from reset 
order by id DESC LIMIT 3 
) t 
order by id ASC 
0

試試

Select * from (SELECT * FROM Table_name ORDER BY Column_name DESC limit 0,3) as alias ORDER BY Column_name ASC; 
0

試試這個手冊吧!

簡單而簡單!

Select * From tableName where 
PKCol=(select count(*) from tableName) 
OR 
PKCol=(select count(*) from tableName)-1 
OR 
PKCol=(select count(*) from tableName)-2 
order by PKCol desc;