mysql 排序解决方法

WBOY
WBOYasal
2016-06-13 10:04:061043semak imbas

mysql 排序
2009-10
2009-8
2009-10+2
10021-8

我想排成這樣,“—”前面的按字符由小到大排序,“—”後面的按數字由小到大排列
10021-8
2009-8
2009-10
2009-10+2

------解决方案--------------------
SELECT substring( fld1, 1, (
instr( fld1, '-' ) -1 )
) AS fld1, substring( fld1, (
instr( fld1, '-' ) +1 )
) AS fld2
FROM `table1`
ORDER BY fld1 ASC , fld2 ASC

外面那层select不要也可以
这样的话,数据量大应该也没问题吧
------解决方案--------------------

引用我想排成這樣,“—”前面的按字符由小到大排序,“—”後面的按數字由小到大排列
10021-8
2009-8
2009-10
2009-10+2
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn