这个问题,首先要将%和_符号进行转义,这样就与mysql的%和_通配符不冲突,
在特殊字符前加 / ,特殊字符分别转义成
具体步骤如下:1,把所有表的结构和数据导出为文本的.sql文件,用文本编辑软件word或者dw等都可以,用替换方法比如把字符A替换为B,但这有可能误 *** 作,所以要慎重查看;
2,替换完以后,再利用mysql数据管理软件,把SQL文件导入到新的数据库中,进行严格测试,通过后;把旧版数据备份(主要为了安全着想),然后导入新的数据即可完成所需 *** 作。
db2数据库 有个values函数可用于你说的这种 *** 作,但是mysql本身是 没有这样的函数的。
下面是取巧的一种写法,也能得到你想要的数据。如图:
selecttrim(substring_index(substring_index(a.num,',',b.help_topic_id + 1),',' ,- 1)) AS numb
from (
select
'39982665399,39023431098,39764974481,39055572973,39897342743,40127675336,40174795679' as num
from dual ) a
JOIN apsc.help_topic b ON b.help_topic_id <(length(a.num) - length( REPLACE(a.num, ',', '') ) + 1 )
希望能帮到你!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)