我有一个字段有这种信息"web-1/1.,web-2/2.,web-3/3,web-4/4,web-5/5.".其他寄存器可能有不同的值,如"web-1/4,web-2/5,web-3/1,web-4/2,web-5/3".
我想选择和订购,让我们说web-2 /?将是web-2/1,web-2/2,web-2/3等所有包含web-2的字段和按最后一个数字排序的字段
我想创建一个特色属性脚本不同的网站并指定功能号.不同的属性,不同的网站不同的顺序
Fra*_*nes 14
我建议您查看MySQL字符串函数,更具体地说是SUBSTRING_INDEX函数.我建议这个结果的原因SUBSTRING是因为斜线之前或之后的数字可能多于一个数字,这将使第一和/或第二部分的长度变化.
例:
SELECT `info`,
SUBSTRING_INDEX(`info`, '/', 1) AS `first_part`,
SUBSTRING_INDEX(`info`, '/', -1) AS `second_part`
FROM `table`
ORDER BY `first_part` ASC,
`second_part` ASC;
Run Code Online (Sandbox Code Playgroud)
结果:

附加示例
在这个例子中,我正在使用CAST将第二部分转换为无符号整数,以防它包含其他字符,如符号或字母.换句话说,"web-4/15"的第二部分.将是"15","web-4/15****"的第二部分也将是"15".
SELECT `info`,
SUBSTRING_INDEX(`info`, '/', 1) AS `first_part`,
CAST(SUBSTRING_INDEX(`info`, '/', -1) AS UNSIGNED) `second_part`
FROM `table`
ORDER BY `first_part` ASC,
`second_part` ASC;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5083 次 |
| 最近记录: |