gpt4 book ai didi

mysql - ORDER BY - 相同的值

转载 作者:行者123 更新时间:2023-11-30 22:33:27 26 4
gpt4 key购买 nike

这是一个结构示例:

// tablename
+----+------+---------+
| id | numb | color |
+----+------+---------+
| 1 | 4 | green |
| 2 | 4 | yellow |
| 3 | 3 | red |
+----+------+---------+

这是一个查询的例子:

SELECT id, numb, color FROM tablename ORDER BY numb asc

结果将是:

+----+------+---------+
| id | numb | color |
+----+------+---------+
| 3 | 3 | red |
| 1 | 4 | green |
| 2 | 4 | yellow |
+----+------+---------+

现在,我的重点是这些行的顺序:

| 3  | 4    | green   |
| 2 | 4 | yellow |

因为它们的 numb 值是相等的,现在我想知道,对于执行该查询的几个,它们将是常量? (是否保证相同值的顺序?) 或者没有任何保证,我应该在查询中使用另一个列名,如 ORDER BY numb, id asc

最佳答案

简短回答:不,无法保证。 (正如@Strawberry 在问题下所写)

完整答案:您可以添加一个名为sort_identical 的新列,并随意填充它。然后使用这个:

... ORDER BY numb, sort_identical asc

(您也可以使用 id 而不是创建新列 - 但如果您需要以不同于 id 的方式对它进行排序,则创建一个新列)

+----+------+---------+----------------+
| id | numb | color | sort_identical |
+----+------+---------+----------------+
| 3 | 3 | red | 1 |
| 1 | 4 | green | 2 |
| 2 | 4 | yellow | 3 |
+----+------+---------+----------------+

关于mysql - ORDER BY - 相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33220014/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com