如何将三个查询语句合并为一个,以统计不同版本下特定时间创建的记录数?

如何将三个查询语句合并为一个,以统计不同版本下特定时间创建的记录数?

如何将三条 mysql 查询语句合并为一条?

在问题中,你提供了三条 mysql 查询语句:

select count(*) as tp_count from `qra_works` where `created_time` > '2023-05-10 18:44:37' limit 1 select count(*) as tp_count from `qra_works` where `created_time` > '2023-05-10 18:44:37' and `version` = 'junior' limit 1 select count(*) as tp_count from `qra_works` where `created_time` > '2023-05-10 18:44:37' and `version` = 'senior' limit 1

这些语句用于获取 qra_works 表中 created_time 大于特定时间且 version 为不同值的记录数。确实,连续执行这三条语句会影响效率。

以下是一条查询语句,可以将这三条语句合并:

select      version, count(*) as tp_count  from      `qra_works`  where      `created_time` > '2023-05-10 18:44:37'   group by version

合并后的查询语句首先筛选出 created_time 大于特定时间的记录,然后对每个 version 值进行分组,并统计每个组中记录的数量。

执行这条合并后的查询语句将返回以下结果:

+--------+----------+ | version | tp_count | +--------+----------+ | junior  | 100      | | senior  | 200      | +--------+----------+

这与分别执行三条原始查询语句得到的结果是一致的。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享