0
A
回答
2
假设有可能是最多的数字之前一个字母开头,你可以在你的排序定义中使用这样的条件:
ORDER BY CAST(IF(col REGEXP '^[a-z]', SUBSTRING(col, 2), col) AS SIGNED)
不幸的是,MySQL不具有替代功能可以处理正则表达式,否则在这一点上会非常有帮助。
您可能还想考虑将数值本身存储在单独的计算字段中,以便进行更有效的排序。
相关问题
- 1. 排序考虑的情况下考虑
- 2. JavaScript自定义排序功能,优先考虑一个字母
- 3. 字母数字mysql排序
- 4. 如何排序列表,同时优先考虑数字之前的字母表?
- 5. 如何排列字的排列alphabiticaly,但考虑字母的情况?
- 6. PHP MySQL - 不考虑字符集
- 7. MYSQL - 按首字母排序
- 8. MySQL - 在考虑LIMIT
- 9. MySQL的查询需要序列考虑
- 10. 排序树与家长考虑
- 11. 排序表考虑空白单元格
- 12. 按列排序MySQL行,但不按字母顺序排列
- 13. mysql排序字母和数字
- 14. 在mysql中以字母数字排序
- 15. Mysql - priotize按数字排序的字母排序
- 16. MySQL真的不稳定 - 考虑迁移
- 17. 排序标题不考虑“的”在WordPress的(wp_query)
- 18. 排序字母
- 19. Laravel雄辩 - 考虑父母的deleted_at
- 20. UISlider不考虑
- 21. 按数字排序记录,然后按字母排序MySQL
- 22. 排序NSDate不考虑当天的时间 - 只是日期
- 23. 表格排序不考虑数值中的逗号
- 24. 高级MySQL按字母排序前缀?
- 25. MySQL按特定字母排序
- 26. Mysql按开头字母排序
- 27. 的MySQL,排序单个字母第一,然后双字母,那么三字母
- 28. 我有只考虑在MySQL
- 29. 排序使用值字母字符串数组,并考虑值的情况下,在PHP
- 30. 如何更改maxlength参数来验证textarea只考虑字母而不考虑空格?
我从来没有见过这个。它通过ascii代码正确排序。在不知道它是否存在的情况下,在运行时使用替换来执行此操作会非常混乱。您可以有第二列进行排序,以扩大数值。你会遇到问题,这意味着耗时的文字编程,因为像4 ='四',但40 ='四十'(而不是四个零)。 – ps2goat