如何在一个查询中为多个结果计算最大值和最小值?

时间:2018-07-14 18:00:15

标签: mysql sql

我正在尝试为特定的Min参加Maxvenue出勤,我的想法是在venue表中获得所有可用的场地,然后无论如何,这并不是一个简单的解决方案,因此,我想知道是否有可能直接在一个查询多个场所的情况下直接计算MinMax的出勤率。

假设表match中有以下记录:

id | venue_id | venue_attendance |
 1      5             1800
 2      5             2000
 3      6             500
 4      6             750

查询应返回以下结果:

{
   venue_id: 5, 
   min_attendance: 1800,
   max_attendance: 2000
},
{
   venue_id: 6, 
   min_attendance: 500,
   max_attendance: 750
}

1 个答案:

答案 0 :(得分:0)

您可以尝试一下,只需在MIN列中将MAXgroup byvenue_id一起使用。

SELECT venue_id,
       MIN(venue_attendance) as min_attendance,
       MAX(venue_attendance) as max_attendance
FROM `match`
GROUP BY venue_id

SQLfildde:http://sqlfiddle.com/#!9/7d7cd3/4