我有一个 MySQL 表,其中包含字段id
和string
. id
s 是独一无二的。 string
s 是 varchars 并且是非唯一的。
我执行以下查询:
SELECT id, string, COUNT( * ) AS frequency
FROM table
GROUP BY string
ORDER BY frequency DESC, id ASC
问题
假设该表包含三个具有相同string
值的行,id
s 为 1、2 和 3。
- 哪个
id
将被返回(1、2 或 3)? id
这个查询将去往哪个ORDER BY
(与返回的相同?...见问题 1)?- 你能控制哪些
id
被退回/用于订购吗?例如。返回最大的id
,或者id
是 GROUP 中的第一个。
我最终想要做的是获得相同字符串的频率出现,按该频率排序,从最高到最低,并在频率关系上,从返回/排序的组id
中最小的排序。id
我使情况更加通用,以弄清楚 MySQL 如何处理这种情况。