我有一个更新项目的数据库表(item_id, updated_time, key, value)
。我想知道每个项目更新了多少次。我目前的查询是:
SELECT item_id, count(*)
FROM (SELECT DISTINCT item_id, updated_time FROM updates)
GROUP BY item_id;
问题是这运行非常缓慢。我的表有 2451 个项目和大约 800 万个更新,数据库目前只涵盖一天。我在和item_id
上有索引。updated_time
(item_id, updated_time)
我可以让这个查询在 sqlite 中运行得更快吗?转向不那么“精简”的东西会有帮助吗?