sql – 为每个ID抓取最大值的简单查询
发布时间:2020-12-12 16:39:40 所属栏目:MsSql教程 来源:网络整理
导读:好,我有一张这样的表: ID Signal Station OwnerID111 -120 Home 1111 -130 Car 1111 -135 Work 2222 -98 Home 2222 -95 Work 1222 -103 Work 2 这一切都是在同一天.我只需要查询返回每个ID的最大信号: ID Signal Station OwnerID111 -120 Home 1222 -95 Wor
好,我有一张这样的表:
ID Signal Station OwnerID 111 -120 Home 1 111 -130 Car 1 111 -135 Work 2 222 -98 Home 2 222 -95 Work 1 222 -103 Work 2 这一切都是在同一天.我只需要查询返回每个ID的最大信号: ID Signal Station OwnerID 111 -120 Home 1 222 -95 Work 1 我尝试使用MAX(),并且与每个记录不同的站和OwnerID的聚合混乱.我需要做JOIN吗? 解决方法这样的东西加入自己的表,并排除发现更高信号的行.select cur.id,cur.signal,cur.station,cur.ownerid from yourtable cur where not exists ( select * from yourtable high where high.id = cur.id and high.signal > cur.signal ) 这将为每个最高信号列出一行,因此每个ID可能有多个行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |