SQLite 计算字符串中单词出现的次数

Kri*_*hna 6 sqlite

例如,我想计算一个单词在字符串中出现的次数,

[{"lastUpdatedDateTime":{"timestamp":1.54867752522E12},"messageStatus":"DELIVERED","phoneNumber":"+916000060000"},{"lastUpdatedDateTime":{"timestamp":1548677525220},"messageStatus":"DELIVERED","phoneNumber":"+916000060000"}]
Run Code Online (Sandbox Code Playgroud)
在上面的字符串中,我想计算没有出现“DELIVERED”这个词的次数,这里是 2。我想得到结果 2。请帮我解决这个问题。我应该只使用 sql 查询来实现这一点。

提前致谢。

for*_*pas 13

如果您的表名tablea和列名是col

SELECT 
(LENGTH(col) - LENGTH(REPLACE(col, '"DELIVERED"', ''))) 
/ 
LENGTH('"DELIVERED"') as counter 
from tablea
Run Code Online (Sandbox Code Playgroud)

删除每个出现的"DELIVERED"字符串并从原始字符串中减去字符串的长度,最后将结果除以"DELIVERED"