Mysql查询最大值对应字段

时间:2016-03-03 17:29:06

标签: mysql max

我想获得最大值的相应字段。所以我想展示那个自治市镇犯罪率最高的实际影响力。

这是我尝试过的。我不确定我是否正确使用案例。

SELECT b.boroughName, 
       actualOffence( CASE WHEN MAX(c.crimeCount)), (c.crimeCount)
  FROM FYP_Borough b 
        JOIN FYP_Crime c 
          ON b.boroughID=c.boroughID 
        JOIN FYP_Offence o  
          ON c.offenceID=o.offenceID
 GROUP BY b.boroughName

1 个答案:

答案 0 :(得分:0)

您必须在子查询中获得每crimeCountboroughname,然后相应地join。如果我正确理解您的数据结构,这应该有效:

SELECT b.boroughName, 
    o.actualOffence,
    c.crimeCount
FROM (SELECT b2.boroughID, b2.boroughname, max(c2.crimecount) maxcrimecount
      FROM FYP_Borough b2
          JOIN FYP_Crime c2 ON b2.boroughID=c2.boroughID 
      GROUP BY b2.boroughID, b2.boroughName
    ) b JOIN FYP_Crime c ON b.boroughID=c.boroughID AND b.maxcrimecount = c.crimecount
        JOIN FYP_Offence o ON c.offenceID=o.offenceID