簡體   English   中英

MySQL中的自然排序技術

[英]Natural sorting technique in mysql

我在mysql中執行自然排序時遇到問題。 我是mysql菜鳥,也許這會增加問題

我在工作的網站上有公交車號碼列表

名單最初是隨機的

bus_name

F1
F22
F10
F15
F7
F90

我嘗試使用此方法進行自然排序

mysql> SELECT version
-> FROM version_sorting
-> ORDER BY CAST(version AS UNSIGNED), version;

取自http://www.mpopp.net/2006/06/sorting-of-numeric-values-mixed-with-alphanumeric-values/

但是我現在有以下內容

F1
F10
F15
F22
F7
F90

如我所知,我相信上面的問題與mysql隨每個字符串附加的虛零有關,從而使F7為F70,即> F22

我希望我的清單像

F1
F7
F10
F15
F22
F90

大家能幫我嗎

嘗試這個:

SELECT vs.version
FROM version_sorting vs
ORDER BY CAST(SUBSTRING(vs.version,2) AS SIGNED), vs.version;

你可以試試這個嗎?

SELECT version
FROM version_sorting
ORDER BY LENGTH(version),  version;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM