Obteniendo el valor máximo de las filas y uniéndose a otra tabla
Lo siento si esto es estúpido, soy realmente un novato tratando de aclarar esto.
Table A:
ID Rank Name
1 100 Name1
1 45 Name2
2 60 Name3
2 42 Name4
2 88 Name5
Table B:
ID FileName
1 fn1
2 fn2
Lo que quiero es
1 fn1 name1
2 fn2 name5
Así se ve mi consulta, pero me da varias filas de resultados (en lugar de max) cuando hago la unión
select B.Id B.FileName,A.Name
FRom B
JOIN (
select A.Id, MAX(A.Rank)as ExpertRank
from A
group by A.Id
) as NewA on A.Id = B.ID
join B on A.Rank = NewA.Rank
La subconsulta funciona bien, tengo el problema al hacer la unión.
¿Cómo puedo solucionar esto
Gracias
Tengo servidor SQL 2008 R2
La última es lo que me perdí.
select B.Id B.FileName,A.Name
FRom B
JOIN (
select A.Id, MAX(A.Rank)as ExpertRank
from A
group by A.Id
) as NewA on A.Id = B.ID
join B on A.Rank = NewA.Rank
and A.Id = newA.Id