0

我有一个表(新闻),我尝试选择除最近的四个之外的所有行。该表有一个字段 news_date(日期格式)和 news_id(自动增量)。结果应该是 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 ;

谁能帮我解决这个问题?

4

2 回答 2

1

LIMIT原因允许您设置偏移量。

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

初始行的偏移量为 0(不是 1)。有关更多信息,请阅读MySQL 手册中的“SELECT Syntax”

于 2013-02-06T06:35:02.153 回答
0

我会尝试以下方法:

SELECT *
  FROM mytable
 ORDER BY news_date DESC, news_id DESC
 LIMIT 18446744073709551615 OFFSET 3;
于 2013-02-06T13:53:37.920 回答