求mysql数据库表中提取出汉字(去掉字母数字等,仅仅保留汉字)

求mysql数据库表中提取出汉字(去掉字母数字等,仅仅保留汉字),第1张

mysql好久不用了,不记得有没有replace这个函数了。

如果有的话,有个笨办法,但也挺快的,就26个字母,10个数字嘛。

update supply set Description = replace(description, 'a', '')

把其中的a按个换,直到都完事儿了,执行完一次,换下个字符。

这只是个想法,上面的语法不知道对不对。

虽然是笨办法,但相信5分钟内也能解决问题了。

要视情况而定,不同的要求有不同的截取办法。

可分为从左往右截取,从右往左截取,从第几位截取,关键字截取。步骤如下。

具体步骤如下:

从左开始截取字符串

left(str, length)

说明:left(被截取字段,截取长度)

例:select left(content,200) as abstract from my_content_t

从右开始截取字符串

right(str, length)

说明:right(被截取字段,截取长度)

例:select right(content,200) as abstract from my_content_t

截取字符串

substring(str, pos)

substring(str, pos, length)

说明:substring(被截取字段,从第几位开始截取)

substring(被截取字段,从第几位开始截取,截取长度)

例:select substring(content,5) as abstract from my_content_t

select substring(content,5,200) as abstract from my_content_t

(注:如果位数是负数 如-5 则是从后倒数位数,到字符串结束或截取的长度)

按关键字截取字符串

substring_index(str,delim,count)

说明:substring_index(被截取字段,关键字,关键字出现的次数)

例:select substring_index(”blog.chinabyte.com”,”。”,2) as abstract from my_content_t

结果:blog.chinabyte

(注:如果关键字出现的次数是负数 如-2 则是从后倒数,到字符串结束)

结果:chinabyte.com

截取的字符串为15,151,152,16’,可以看作是ip吧(虽然这里指的不是iP),

然后要截取每个逗号之前那部分。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6121217.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存