Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Consulta simples para obter o valor máximo para cada ID


Algo assim? Junte sua tabela a ela mesma e exclua as linhas para as quais um sinal mais alto foi encontrado.
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
)

Isso listaria uma linha para cada sinal mais alto, portanto, pode haver várias linhas por id.