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

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

如何将三条 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      |
+--------+----------+

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

以上就是如何将三个查询语句合并为一个,以统计不同版本下特定时间创建的记录数?的详细内容,更多请关注其它相关文章!