gpt4 book ai didi

SQLite 联合表和计数(*)的有效方法

转载 作者:行者123 更新时间:2023-12-03 03:26:31 29 4
gpt4 key购买 nike

我想计算两个表的行数,包括使用where子句。我已经有了解决方案,但不知道这是否是最好的方法。 where 子句是动态构建的,最多可过滤 5 列。该表有 10 列,最多可包含数百万条记录。

select count(*) from 
(
select * from pending {whereClause}
union all
select * from history {whereClause}
)

最佳答案

由于表可以有不同的索引,并且您可以应用不同的 WHERE 子句,因此您的解决方案是一个完全有效的解决方案。

由于检查不同集合的签名会产生开销,因此您可能会更快地分别获取两个计数,然后将它们相加...

SELECT
(select COUNT(*) from pending {whereClause})
+
(select COUNT(*) from history {whereClause})

关于SQLite 联合表和计数(*)的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48423249/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com