当我想从数据库的最后一行到第一行进行选择时,我使用SELECT * FROM Gallery ORDER BY ID DESC
,但我想从最后一行到第一行选择第三行,例如以下代码:
$LastRowID = 20;
$FindRows = mysqli_query($Database,"SELECT * FROM Table ORDER BY ID DESC");
$FindLastRow = mysqli_query($Database,"SELECT * FROM Table Where ID = /* $LastRowID - 3 */ ORDER BY ID DESC");
当此代码运行时,它只选择 $LastRowID - 3 行,但我需要选择 $LastRowID - 3 之后的所有行;
实现此目的的方法是什么?
这是一种方法...
SELECT * FROM ints;
+---+
| i |
+---+
| 0 |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
| 7 |
| 8 |
| 9 |
+---+
SELECT * FROM ints ORDER BY i DESC LIMIT 3,100000;
+---+
| i |
+---+
| 6 |
| 5 |
| 4 |
| 3 |
| 2 |
| 1 |
| 0 |
+---+
SELECT x.* FROM
( SELECT * FROM Table ORDER BY Id DESC LIMIT 3) AS x
ORDER BY x.Id LIMIT 1
这应该会让你得到具有第三个最高 ID 的行。