2014-11-25 52 views
2
SELECT doesntmatterwhat 
FROM whatever 
OFFSET 3 LIMIT 2 

我将如何重现此,但不使用LIMITOFFSET选择最后3行,但不使用TOP最后一个如何选择最后3行,但最后一个

+0

那么,RDBMS是MySQL吗? – 2014-11-25 10:56:37

+0

我应该只使用ISO SQL,因此RDBMS无关紧要。但是,这是postgresql – woutwoot 2014-11-25 11:05:00

+0

这听起来像是功课 – franglais 2014-11-25 11:33:48

回答

1

这是我一直在寻找的解决方案。感谢您的帮助。

SELECT doesntmatterwhat 
FROM whatever 
ORDER BY 1 
OFFSET 3 ROWS 
FETCH FIRST 2 ROWS ONLY; 
+0

,您确定?我想你需要一个''的订单? – 2014-11-25 11:19:51

+0

是的,我的错误。 – woutwoot 2014-11-25 11:20:17

1
SELECT TOP 2 FROM (
SELECT TOP 3 doesntmatterwhat 
FROM whatever 
) a 
ORDER BY doesntmatterwhat 

SELECT n.doesntmatterwhat 
FROM (SELECT n.doesntmatterwhat, row_number() OVER (ORDER BY date DESC) AS sequence 
    FROM whatever n 
) n 
WHERE n.sequence>= 2 AND n.sequence<= 3; 
+0

也不能使用TOP。 – woutwoot 2014-11-25 11:09:26

+0

更新为不使用TOP – Matt 2014-11-25 11:12:31