是否有一种优雅的方式在 MySQL 数据库中进行高性能、自然的排序?
Is there an elegant way to have performant, natural sorting in a MySQL database?
例如,如果我有这个数据集:
For example if I have this data set:
任何其他优雅的解决方案,而不是将游戏名称拆分成它们的组件
Any other elegant solution than to split up the games' names into their components
确保它们按正确的顺序出现?(4 之后的 10,而不是 2 之前).
to make sure that they come out in the right order? (10 after 4, not before 2).
这样做很痛苦,因为时不时会有另一款游戏打破解析游戏标题的机制(例如战锤 40,000"、詹姆斯邦德 007")
Doing so is a pain in the a** because every now and then there's another game that breaks that mechanism of parsing the game title (e.g. "Warhammer 40,000", "James Bond 007")
我认为这就是为什么很多东西都按发布日期排序的原因.
I think this is why a lot of things are sorted by release date.
解决方案可能是在表中为SortKey"创建另一列.这可能是标题的经过清理的版本,它符合您为便于排序或计数器而创建的模式.
A solution could be to create another column in your table for the "SortKey". This could be a sanitized version of the title which conforms to a pattern you create for easy sorting or a counter.
这篇关于MySQL中的自然排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
如何有效地使用窗口函数根据 N 个先前值来决定How to use windowing functions efficiently to decide next N number of rows based on N number of previous values(如何有效地使用窗口函数根据
在“GROUP BY"中重用选择表达式的结果;条款reuse the result of a select expression in the quot;GROUP BYquot; clause?(在“GROUP BY中重用选择表达式的结果;条款?)
Pyspark DataFrameWriter jdbc 函数的 ignore 选项是忽略整Does ignore option of Pyspark DataFrameWriter jdbc function ignore entire transaction or just offending rows?(Pyspark DataFrameWriter jdbc 函数的 ig
使用 INSERT INTO table ON DUPLICATE KEY 时出错,使用 Error while using INSERT INTO table ON DUPLICATE KEY, using a for loop array(使用 INSERT INTO table ON DUPLICATE KEY 时出错,使用 for 循环数组
pyspark mysql jdbc load 调用 o23.load 时发生错误 没有合pyspark mysql jdbc load An error occurred while calling o23.load No suitable driver(pyspark mysql jdbc load 调用 o23.load 时发生错误 没有合适的
如何将 Apache Spark 与 MySQL 集成以将数据库表作为How to integrate Apache Spark with MySQL for reading database tables as a spark dataframe?(如何将 Apache Spark 与 MySQL 集成以将数据库表作为