【问题标题】:How to get second last row from a mysql database?如何从mysql数据库中获取倒数第二行?
【发布时间】:2015-02-11 09:42:45
【问题描述】:

我刚刚查询了数据库的倒数第二行:

这里是代码:

SELECT TOP 1 * FROM
   (select Top 2 * from Categories ORDER BY CategoryID DESC)x                     
   ORDER BY CategoryID

但是这段代码在新版本中给了我错误语法错误。

在旧版本中,此代码可以正常工作。

什么问题:我在表中有 10 个结果,当我提交这个查询时,它给了我 9 行。但是当从表中删除 9 行时,现在我有 8 和 10。但是这段代码给了我 10。

【问题讨论】:

  • 那么,“新”版本是完全不同的数据库品牌?

标签: mysql sql


【解决方案1】:
SELECT * FROM Categories ORDER BY CategoryID  DESC LIMIT 1,1

【讨论】:

  • 只有一条记录时不起作用。按照我的回答。
【解决方案2】:
SELECT *  From
(select * from Categories ORDER BY CategoryID DESC LIMIT 2) AS x                    
ORDER BY CategoryID LIMIT 1

【讨论】:

    【解决方案3】:

    我认为你需要这样的东西SELECT * from Categories ORDER BY CategoryID DESC LIMIT 1, 1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      • 2017-01-16
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      • 1970-01-01
      • 2021-03-14
      相关资源
      最近更新 更多