我有两张 table
1.申请
编号 |姓名 |状态
====================
1 |莫维克 |完成
2 |西蒂 |过程
3 |宝贝 |完成
`
2.application_test
编号 |申请编号 |测试编号 |结果
======================================
1 | 1 | 1 | 70
2 | 1 | 2 | 80
3 | 1 | 3 | 90
4 | 2 | 1 | 60
5 | 2 | 2 | 80
6 | 2 | 3 | 70
7 | 3 | 1 | 90
8 | 3 | 2 | 70
9 | 3 | 3 | 60
10| 3 | 4 | 80
我的问题是:
==================
1.如何找到每个test_id的最大值
2. 如何获取或总计 applicant_id where status complete
例如像这样:
test_id |结果_最大值 | total_applicant_status(完成)
1 | 90 | 2
2 | 80 | 2
3 | 90 | 2
4 | 80 | 1
最佳答案
SELECT MAX(value) FROM table WHERE test_id = 1;
或者SELECT value, test_id FROM table ORDER BY value DESC;
对于下一部分,这可能会给出您想要的。
SELECT at.test_id, MAX(at.result), COUNT(IF(status='complete', 1, 0)) FROM application a LEFT JOIN application_test at ON a.id = at.application_id GROUP BY application_id;
关于php - 如何使用 2 表获取此查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34473594/