2013-02-06 77 views
0

我有一個表(新聞),我嘗試選擇除最近四個之外的所有行。該表有一個字段news_date(日期格式)和news_id(autoincremet)。結果應該是desc。選擇除最近四個之外的所有行

MySQL版本: 5.0

表結構

news_id  (tinyint) 
news_title (text) 
news_date  (date) 

我想這

Select * 
FROM news AS n 
    JOIN 
     (SELECT news_id 
     FROM news 
     ORDER BY news_id  
      LIMIT 1 OFFSET 4 
     ) AS lim 
    ON n.news_id < lim.news_id ; 

誰能幫我這個查詢?

+0

您可以發佈至少結構表格的 –

回答

1

LIMIT原因允許您設置偏移量。

SELECT * FROM mytable ORDER BY news_date LIMIT 3,18446744073709551615; 

初始行的偏移量爲0(不是1)。欲瞭解更多信息,請閱讀'SELECT Syntax' in the MySQL manual

+0

感謝,做工精細! – osanjur

+0

18446744073709551615的數字來自哪裏? – Jimmy

+0

在提供的鏈接中搜索它。 – fionbio

0

我試過如下:

SELECT * 
    FROM mytable 
ORDER BY news_date DESC, news_id DESC 
LIMIT 18446744073709551615 OFFSET 3; 
+0

謝謝你,它對我的​​工作! – osanjur

相關問題