如何解决SQL max函数获取其他表
我有一个简单的关系“ sea”,只有两列,一列称为“名称”,另一列称为“深度”。使用以下命令,我可以在属性深度中输出最大数量:
SELECT max(depth) FROM sea;
我也在尝试获取最大深度的名称,以使其输出:
name | depth
___________________
pacific | 11034
还有一种输出方式吗?
我用group by进行了尝试,并且还尝试将表本身接收其他属性联接起来,但是找不到任何解决方案。
解决方法
使用order by
:
select s.*
from sea s
order by s.depth desc
fetch first 1 row only;
注意:某些数据库不支持fetch
(标准SQL语法),因此您可以使用limit
或select top (1)
或某些类似的构造。
即使有联系,以上内容也只返回一行。如果要所有行,则一个简单的方法是子查询:
select s.*
from seas s
where s.depth = (select max(s2.depth) from seas s2);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。