sql - 如何为每个用户获取具有最小值和最大值的唯一记录

标签 sql sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012

我有下表:

id  gender  age highest weight  lowest weight   abc
a   f       30  90              70              1.3
a   f       30  90              65              null
a   f       30  null            null            1.3
b   m       40  100             86              2.5
b   m       40  null            80              2.5
c   f       50  105             95              6.4

我在 sql server 中需要这个结果。我需要的是重量的最小值和重量的最大值以及每个用户一条记录。

id  gender  age highest weight  lowest weight   abc
a   f       30  90              65              1.3
b   m       40  100             80              2.5
c   f       50  105             95              6.4

最佳答案

只是做一个分组:

select id, 
       max(gender), 
       max(age), 
       max([highest weight]), 
       min([lowest weight]), 
       max(abc)
from SomeTable
group by id

关于sql - 如何为每个用户获取具有最小值和最大值的唯一记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30237564/

相关文章:

sql - Microsoft SQL Server Native Client 10.0 登录超时已过期

sql - Oracle SQL : using LAG function with user-defined-type returns "inconsistent datatypes"

sql - 如何在 SSIS 包中设置变量?

asp.net - 无法完成操作。提供的 SqlConnection 未指定初始目录或 AttachDBFileName

sql - 具有 'not null' 约束的唯一键和主键有什么区别?

sql - 恢复没有数据的数据库

sql - Delphi加载图像保存为sql数据库中的blob

SQL - future 日期时间的查询条件

xml - 使用完整声明将 xml 插入数据库

sql - 使用 like 和 where 模式对列进行索引?