今天在解决一个排序问题的时候,遇到这个需要截取指定部分开始的不定长度的数字字符串,然后把它转成int进行排序操作。
比如一个列是 remark列,需要获得abc-后面紧接着的数字部分
序号 remark列
1 abc-1gb
2 abc-122 4
3 abc-456-gb
4 abc-756 gb
5 abc-11114545454545gb2a
主要是不定长这个比较有挑战,不废话,直接说答案。
mysql 有个mid行数
SELECT MID(column_name,start[,length]) FROM table_name;
参数 | 描述 |
---|---|
column_name | 必需。要提取字符的字段。 |
start | 必需。规定开始位置(起始值是 1)。 |
length | 可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。 |
就是这个函数才有奇迹产生,答案如下,