sql - 寻找查询
问题描述
正如您在下图中看到的,列 ID 的数字有时会多次存在,但每次的状态都与列 STATUS 不同。表中的主键是 ID - STATUS。
我想查询数据库,以便我只看到一次 ID 的列表,其中 STATUS 列中的 STATUS 最高。
我想看到这个结果:
253794 5
254680 1
257307 1
258562 5
261213 5
261219 5
261220 5
.....
如何扩展下面的查询以获得我需要的结果?
select *
from STATUSTABLE
where ID in (253794,253794,254680,257307,258562,258562,261213,261213,261219,261219,261220,261220,261222,261222,261223,261223,263544,263544,263544,263544,264804,264804,264823,264823,265616,265616,266233,266233)
order by ID;
提前致谢!
解决方案
使用group by
:
select id, max(status) as max_status
from STATUSTABLE
where ID in (253794,253794,254680,257307,258562,258562,261213,261213,261219,261219,261220,261220,261222,261222,261223,261223,263544,263544,263544,263544,264804,264804,264823,264823,265616,265616,266233,266233)
group by id
order by ID;
推荐阅读
- linux - 从所有目录检查公共子目录中的文件计数
- github - Appveyor、GitHub、repo 中的多个项目
- c# - 中兴PDF417识别
- security - 如何在不访问互联网的情况下在沙箱中执行 Python 或 Go 脚本?
- c++ - 简单问题 - 如何从单独的“结构”中的“类”访问变量?
- javascript - 如何为 TypeORM 实体中的 @PrimaryGeneratedColumn 设置自定义默认唯一 ID 字符串?
- android - SecondActivity.class 文件未与以红色显示的意图对象链接
- c++ - 如何检查cpp中给定输入的数据类型?
- c# - 无法访问公共接口的属性
- docker - 访问 docker 容器内的其他 docker 服务时超时