mysql - 如何获取MySQL中带有相应属性的表的最大值
问题描述
我example_table
从嵌套查询中得到以下结果:
id site_ref area
-------------------------------
91 Lake SW 0.23
91 Lake MP 3.89
93 Lake SW 0.56
93 Lake MP 0.05
我想获得最大面积id
,并随身携带site_ref
。我使用了以下 SQL:
select id, site_ref, max(area) from example_table GROUP BY id
我得到的是(错误的site_ref
):
id site_ref area
-------------------------------
91 Lake SW 0.56
93 Lake SW 3.89
我想要的是:
id site_ref area
-------------------------------
91 Lake MP 3.89
93 Lake SW 0.56
解决方案
一种方法是相关子查询:
select et.*
from example_table et
where et.area = (select max(et2.area) from example_table et2 where et2.id = et.id);
推荐阅读
- elixir - Phoenix 尝试构建数据库时出现 unique_constraint 错误
- lambda - lambda函数中的Pyspark udf函数错误
- ruby-on-rails - 基于缺少设置会话变量的 Rails 测试失败 - 如何在 Rails 5.2 中设置?
- css - 使用 Bulma CSS 阻止图像和文本
- javascript - 输入字段通过添加/删除功能自动显示在 textarea 上
- delphi - Indy FTP 客户端是否缓存?
- node.js - 从 Dispatch 播放音频文件时出错 | 不和谐.js
- java - 存储环境特定配置的位置
- ios - 使用远程配置进行 Firebase A/B 测试:添加新参数时,需要排除旧应用版本吗?
- r - excel中的日期清理,日期值左对齐