mysql 字符串数字排序

字段A
0-1-3-6-10-10
0-1-3-6-6
请问这个字段A的数据在mysql中怎么排序啊? 我想要对经过处理后的字段A进行升序排序时(怎么处理字段A呢?)0-1-3-6-6 在上面。。

select A from t order by A

查询时排序就上面这样了

还有你说,0-1-3-6-6 在上面? 那是因为 0-1-3-6-6 的长度比0-1-3-6-10-10 短所以排在上面?还是因为 6<10 所以排在上面啊?追问

因为 6<10 所以排在上面

追答

这可有点费劲 了,呵呵

那前面都是以 0-1-3-6 开头么?还是要一位一位比下来?

追问

一位一位比下来

追答

哎,我不能说这个实现不了,但是太费事了

首先按照短划线分割,然后将位数不足的补齐,然后再按照顺序排序……

mysql 没有split 函数,只能靠position substring_index right substring 慢慢拼……

实在是帮不到你啦…………

追问

帮忙拼一个怎么样?我加200财富可以吗?

追答

晕呀,我没mysql 环境,劝你也放弃吧,这个工作就不应该在 sql 层面处理,

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答