如何从最小索引到最大索引对 SQL 结果进行排序?

Posted

技术标签:

【中文标题】如何从最小索引到最大索引对 SQL 结果进行排序?【英文标题】:How Can I Sort SQL Results From Smallest Index To Largest Index? 【发布时间】:2021-12-10 11:34:05 【问题描述】:

我有一个按 ID 排序的数据库。我想回显 ID 号最大的 3 行,但将它们回显为

id = 5
id = 6
id = 7

相对于如何

SELECT * FROM `userinfo`ORDER BY `id` ASC LIMIT 3;

会回响

id = 7
id = 6
id = 5

php

【问题讨论】:

ASC 更改为DESC ? 您好,请问:您的问题是什么?你有什么问题 ?你想用 php 打印出来吗? @B001ᛦ 也许他想打印 id 5/6/7 而不是 7/6/5 如果要按升序回显需要使用ASC,否则使用DESC。但确实不清楚你想问什么 "...我有一个按 ID 排序的数据库..." -- 表是未排序 行。行没有固有的顺序。 【参考方案1】:

使用派生表来限制结果并在外部查询中再次排序。

SELECT *
       FROM (SELECT *
                    FROM `userinfo`
                    ORDER BY `id` DESC
                    LIMIT 3) x
       ORDER BY `id` ASC;

【讨论】:

以上是关于如何从最小索引到最大索引对 SQL 结果进行排序?的主要内容,如果未能解决你的问题,请参考以下文章

在特定元素上查找排序数组的范围索引

如何按 Cassandra 中的二级索引或列对结果进行排序?

ES 聚合索引简介

根据索引从排序的升序数组生成输出

JavaScript 选择排序法

常用类