紧急求助SQLite语句替换字符
本帖最后由 zoenbo 于 2020-11-5 00:09 编辑下面是content表下word字段里的内容,我想用SQL语句批量替换掉“解釋 #1”之前的内容,该怎么写呢?百度遍了结果都是一样,没合适的解决方法。
目前知道用update production setspecification =replace(specification,'',' ') 这个替换,但是对替换“解釋 #1”之前的内容无从下手。在线等~~
「刻意」 (未公開)<br />解釋 #1 <br />讀音:hak1 ji3 ,haak1 ji3 <br />詞性:形容詞
「刻板」 (未公開)<br />解釋 #1 <br />讀音:haak1 baan2 ,hak1 baan2 <br />詞性:形容詞
「片刻」 (未公開)<br />解釋 #1 <br />讀音:pin3 hak1 <br />詞性:名詞
「時時刻刻」 (未公開)<br />解釋 #1 <br />讀音:si4 si4 hak1 hak1 ,si4 si4 haak1 haak1 <br />詞性:副詞 本帖最后由 leon406 于 2020-11-4 23:23 编辑
https://sqlite.org/lang_corefunc.html
看了文档,可以试试下面的
UPDATE test set content =substr(content,instr(content,'解釋 #1'))
测试结果
首先:
SELECT replace('AA23BBCC','23','')as 结果
这样的语句是有效的;
其次,也可以使用拼接
SELECTCONCAT(SUBSTRING("AA23BBCC" ,1,2), SUBSTRING("AA23BBCC" ,5,4))as 结果
我这里用的是mysql
你这个“解釋 #1”字符前的内容是不是固定的字数,如果是固定的可能还能处理,不是固定的估计就难了,固定的内容的话可以用1楼大佬说的SUBSTRING方式进行替换也可以,其实你最好上个图,这样大佬们就看的更清楚直白了 导出批量修改后导入,sql对替换不怎么清楚 风清扬方丈 发表于 2020-11-4 09:09
你这个“解釋 #1”字符前的内容是不是固定的字数,如果是固定的可能还能处理,不是固定的估计就难了,固定 ...
不是固定的 固定的还好解决些 zoenbo 发表于 2020-11-4 10:14
不是固定的 固定的还好解决些
那你这个就估计只能手工操作了。看看有没有大佬能解决,到时一起学习一下 coolcalf 发表于 2020-11-4 08:02
首先:
SELECT replace('AA23BBCC','23','')as 结果
好的 我试试 SUBSTRING好像SQLITE不支持 coolcalf 发表于 2020-11-4 08:02
首先:
SELECT replace('AA23BBCC','23','')as 结果
大佬,刚试了 SQLite上不行的 zoenbo 发表于 2020-11-4 10:14
不是固定的 固定的还好解决些
这些替换通常都是在程序中处理中,不是sql中
页:
[1]
2