繁体   English   中英

在Postgres SELECT语句中的WHERE子句中选择特定行的计数

[英]Select count of specific rows within WHERE clause in a Postgres SELECT statement

假设我有一个名为Build的表和一个名为Test的表。 现在,对于每个版本,都有3个测试。 并且表测试将build_id作为外键。 另外,当测试失败时,我的测试框架将重试该测试。 鉴于此,根据失败的测试次数和重试的次数(最大= 3),“测试”表中将至少有3个条目以及更多条目。 同样,重试后,如果测试通过,则测试将标记为通过。

Sample:
Build Table:
Id     No of Tests     Failure Count
1            3                     0
2            3                     0
3            3                     1


Tests Table: 
build_id        test_id       test_name     test_result
1                      1                test1                p
1                      2                test2                p
1                      3                test3                f
1                      3                test3                f
1                      3                test3                f
1                      3                test3                p
2                      1                test1                p
2                      2                test2                p
2                      3                test3                p
3                      1                test1                p
3                      2                test2                f
3                      3                test3                p
2                      2                test2                f
2                      2                test2                f
2                      2                test2                f

现在,基于此我要打印

test_name    retries         
test3           3                    
test2           3      

如果我理解正确,那么您想要测试为“ f”的次数:

select test_name, count(*) as retries
from tests
where test_result = 'f'
group by test_name;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM