SELECT id FROM table LIMIT 8,3
结果是8,9,10
但我需要10,9,8
你怎么能这样做?如果添加"ORDER BY id DESC",它将获得3,2,1
将查询放在子选择中,然后在外部选择中反转顺序:
SELECT id from (
SELECT id FROM table ORDER BY id LIMIT 8, 3
) AS T1 ORDER BY id DESC
Run Code Online (Sandbox Code Playgroud)
测试数据:
CREATE TABLE table1 (id INT NOT NULL);
INSERT INTO table1 (id) VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11);
SELECT id from (
SELECT id FROM table1 ORDER BY id LIMIT 8, 3
) AS T1 ORDER BY id DESC
Run Code Online (Sandbox Code Playgroud)
结果:
10
9
8
Run Code Online (Sandbox Code Playgroud)
请注意,子查询中的ORDER BY是必需的,否则订单是未定义的.感谢Lasse指出这一点!
| 归档时间: |
|
| 查看次数: |
7487 次 |
| 最近记录: |