SQLite:如何读取保存为字符串的数组并使用数组?

时间:2018-08-21 10:11:49

标签: sqlite

由于某种原因,我的.db文件中有一个table1和一个Column1,这些数据存储为TEXT

Column1
'[1,   2,   0.5]'
'[50,  8.5, 30]'
'[12,  14,  0.5]'
'[5,   45,  25]'
'[0.2, 10,  25]'

这些数据虽然看起来像数组,但都是TEXT格式。

我想将数据用作数组。

准确地说:我想删除第二行小于15的行。 理想的结果应该是:

Column1
'[5,   45,  25]'

我自己尝试了很多方法,但是没有一个起作用。我的许多尝试之一如下:(我承认我完全不知道如何执行此任务。)

DELETE FROM table1 WHERE Column1 <= 15;

有人可以帮我吗?非常感谢!

1 个答案:

答案 0 :(得分:1)

Sqlite没有真正的数组类型。但是,它确实支持使用JSON(当然,假设您的sqlite实例是使用JSON1扩展名编译的)。而且您的样本值恰好是有效的JSON数组。

这使我们可以合作:

DELETE FROM table1 WHERE json_extract(column1, '$[1]') < 15;