首页 > 解决方案 > 排序以具有不连续的列值

问题描述

这在 mysql 查询中可能吗?当前数据表为:

id - fruit - name
1 - Apple - George
2 - Banana - George
3 - Orange - Jake
4 - Berries - Angela

在该name列中,我想对其进行排序,以便我的select查询中没有连续的名称。

我的愿望输出将是,george名称列中没有连续的。

id - fruit - name
1 - Apple - George
3 - Orange - Jake
2 - Banana - George
4 - Berries - Angela

提前致谢。

标签: mysqlsqlalgorithmsortingcolumnsorting

解决方案


在 MySQL 8+ 中,您可以执行以下操作:

order by row_number() over (partition by name order by id)

在早期版本中,您可以使用变量来执行此操作。


推荐阅读