如何按字符串末尾有id的字符串排序?
例如,我想按末尾的数字(rspp之后)对这些字符串进行排序:
RSPP891
RSPP896
RSPP897
RSPP898
RSPP899
RSPP900
RSPP901
RSPP902
RSPP903
RSPP904
RSPP730
RSPP731
RSPP1380
RSPP733
RSPP734
我读了一些关于substring的内容,所以我尝试了这个查询,但是没有成功。
SELECT `RsppTags` FROM Table WHERE ConnectionID = 15202
ORDER BY
SUBSTR(RsppTags FROM 4 FOR LENGTH(RsppTags)-1),
CAST(SUBSTR(RsppTags FROM 1) AS UNSIGNED)
有可能得到这些数据吗 ORDER BY ASC
?
5条答案
按热度按时间7cjasjjr1#
qcbq4gxm2#
尝试:
显示结果的示例sql fiddle
s4n0splo3#
SELECT RsppTags FROM Table WHERE ConnectionID = 15202 ORDER BY CAST(SUBSTR(RsppTags FROM 5) AS UNSIGNED)
默认情况下,mysql提供asc排序。尝试以上查询。它会帮助你的。
hgncfbus4#
尝试
ifmq2ha25#