首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >嵌套min和max的SQL查询

嵌套min和max的SQL查询
EN

Stack Overflow用户
提问于 2018-06-08 04:00:41
回答 3查看 174关注 0票数 -1

我不确定标题的措辞是否正确。基本上我的数据看起来像这样:

代码语言:javascript
复制
A    B    C
1    10   0.6
1    11   0.6
1    12   1.0
1    13   1.0
2    5    0.6
2    4    0.6

我想选择具有最大C值的行。如果结果是重复行,我将选择具有最低B值的行

所以,我期待着

代码语言:javascript
复制
A    B    C
1    12   1.0
2    4    0.6

对此适当的sql查询是什么?

EN

回答 3

Stack Overflow用户

发布于 2018-06-08 04:51:23

您可以执行以下操作:

代码语言:javascript
复制
select t.*
from t
where (t.b, t.c) = (select t2.b, t2.c
                    from t t2
                    where t2.a = t.a
                    order by t2.c desc, t2.b asc
                    limit 1
                   );

Here是一个SQL。

这个版本的好处是它没有聚合,可以利用(a, c, b)上的索引。

票数 0
EN

Stack Overflow用户

发布于 2018-06-08 04:05:38

代码语言:javascript
复制
SELECT A, B, C
FROM [myTable]
ORDER BY C DESC, B ASC
LIMIT 1
票数 -1
EN

Stack Overflow用户

发布于 2018-06-08 04:14:59

在sqlite中,简单的一行代码如下:

代码语言:javascript
复制
select A, min(B), C from tableXXX group by C order by C desc;
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50749337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档