sqlite replace() 函数执行字符串替换

标签 sql sqlite

我需要修改 sqlite 数据库中的一列。

该列是一个值数组,如下所示:

0.021460.04419,0.04551,0.02734,0.011,0.005

该数组在第一个和第二个值之间缺少逗号,因此该数组应如下所示:
0.02146,0.04419,0.04551,0.02734,0.011,0.005

数据值永远不会大于 0.9,因此我尝试构建一个更新查询,该查询将使用 replace() 函数执行字符串替换,标识第二个“0”。并将其替换为“,0。”,但我不知道该怎么做。

最佳答案

只需为所有出现的 0. 添加一个逗号:

               replace(TheColumn, '0.', ',0.')

然后删除重复项:
       replace(replace(TheColumn, '0.', ',0.'), ',,', ',')

和开头的逗号:
substr(replace(replace(TheColumn, '0.', ',0.'), ',,', ','), 2)

关于sqlite replace() 函数执行字符串替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25076117/

相关文章:

sql - SPARQL 查询,选择除匹配项之外的所有内容?

mysql - 根据两个表中的两列查找行

sql - T SQL 格式 SSN/IN (SQL Server 2016+)

mysql - 此查询运行 30 秒。我该如何优化它?

sql - GORM many2many 预加载错误

sql - 匹配来自两个表的行数不相等的数据

c# - SQLIte 无法打开数据库

php - Mysql 和 PHP 查询

java - Java 和 C++ 之间的 IPC

Android P - 从 Assets 复制数据库后出现 'SQLite: No Such Table Error'