mysql SUBSTRING_INDEX() 函数用法及字符串转数字
SUBSTRING_INDEX的用法:SUBSTRING_INDEX(str,delim,count).
在定界符 delim 以及count 出现前,从字符串str返回自字符串,若count为正值,则返回最终定界符(从左边开始)左边的一切内容。若count为负值,则返回定界符,从右边开始,右边的一切内容,代码如下:
- mysql> SELECT SUBSTRING_INDEX('www.phpfensi.com', '.', 2);
- -> 'www.mysql'
- mysql> SELECT SUBSTRING_INDEX('www.phpfensi.com', '.', -2);
- -> 'phpfensi.com'
字符串转数字:我用它来读取标题中带有数字用其排序,然而遇到一个问题.
个别标题没加数字序号时就会报错,那是因为上面函数返回值是字符串类型,如果查找不到.字符就会返回”,这样以来int类型的排序字段就写不进去,于是到网上搜了一下字符串转数字的方法,其实很简单:
select 'a'+0;
只需要 +0 就可以了~
补充一下另一个类是的函数
SUBSTRING()函数,代码如下:
- SUBSTRING(str,pos,len)
- SUBSTRING(str FROM pos FOR len)
- SUBSTRING(str,pos)
- SUBSTRING(str FROM pos)
- mysql> SELECT SUBSTRING(‘Quadratically’,5);
- -> ‘ratically’ --phpfensi.com
- mysql> SELECT SUBSTRING(‘foobarbar’ FROM 4);
- -> ‘barbar’
- mysql> SELECT SUBSTRING(‘Quadratically’,5,6);
- -> ‘ratica’
- mysql> SELECT SUBSTRING(‘Sakila’, -3);
- -> ‘ila’
- mysql> SELECT SUBSTRING(‘Sakila’, -5, 3);
- -> ‘aki’
- mysql> SELECT SUBSTRING(‘Sakila’ FROM -4 FOR 2);
- -> ‘ki’