SQLite JSON 查询以计算嵌套列表中的项目数
SQLite JSON query to count number of items in nested list
我正在尝试查询其中一列包含 JSON 数据的数据库。我正在使用 python 和 json1 扩展将查询拉入我的 python 代码。
下面是数据库 json 中的数据示例。
"perf": {
"timestamp": 1575933555,
"frame": 0,
"type": "BEST",
"azimuth": 0
},
"dots": [{
"a": -1.6,
"b": -6.4,
"c": -0.1,
"int": 72
}, {
"a": -1.9,
"b": -6.4,
"c": 0.0,
"int": 60
}]
}
我正在尝试计算 "dots" 嵌套列表中的项目数。在这种情况下有两个,尽管可能更多或更少取决于行中的数据。
SELECT COUNT(json_extract(json, ("$.dots"))) FROM json_database;
Returns 数据库中的总行数。它不会深入 "dots" 列表来计算项目的数量。尝试索引 $.dots[i]
也不会 return 元素总数。
如何计算嵌套列表中的项目总数作为 sqlite 查询?
您没有在文档中看到 json_array_length()
。试试这个:
SELECT json_array_length(json, '$.dots') AS count
FROM json_database;
我正在尝试查询其中一列包含 JSON 数据的数据库。我正在使用 python 和 json1 扩展将查询拉入我的 python 代码。
下面是数据库 json 中的数据示例。
"perf": {
"timestamp": 1575933555,
"frame": 0,
"type": "BEST",
"azimuth": 0
},
"dots": [{
"a": -1.6,
"b": -6.4,
"c": -0.1,
"int": 72
}, {
"a": -1.9,
"b": -6.4,
"c": 0.0,
"int": 60
}]
}
我正在尝试计算 "dots" 嵌套列表中的项目数。在这种情况下有两个,尽管可能更多或更少取决于行中的数据。
SELECT COUNT(json_extract(json, ("$.dots"))) FROM json_database;
Returns 数据库中的总行数。它不会深入 "dots" 列表来计算项目的数量。尝试索引 $.dots[i]
也不会 return 元素总数。
如何计算嵌套列表中的项目总数作为 sqlite 查询?
您没有在文档中看到 json_array_length()
。试试这个:
SELECT json_array_length(json, '$.dots') AS count
FROM json_database;