Como dice el título, estoy usando SQL Server 2008. Disculpe si esta pregunta es muy básica. Solo he estado usando SQL por unos días. Ahora mismo tengo la siguiente consulta:SQL Server 2008: TOP 10 y distinto
SELECT TOP 10 p.id, pl.nm, pl.val, pl.txt_val
from dm.labs pl
join mas_data.patients p
on pl.id = p.id
where pl.nm like '%LDL%'
and val is not null
Lo que quiero hacer es usar select subir n junto con los valores distintos en la columna id. Buscando a través de algunos foros dice que use
SELECT DISTINCT TOP 10 ...
pero cuando se sustituye la primera línea con
SELECT DISTINCT TOP 10 p.id, pl.nm, pl.val, pl.txt_val
me da los mismos resultados que sin la palabra distinta. ¿Qué debería estar haciendo solo para filtrar entradas de identificación duplicadas?
Gracias.
Creo que necesita expresar su pregunta de manera más explícita. Si tiene tres filas con p.id = 1, ¿qué fila quiere? ¿El que tiene el pl.nm más alto o más bajo, pl.val, pl.txt_val, alguna combinación o algo completamente diferente? SQL no puede aplicar DISTINCT() de esta manera, pero hay formas de obtener una fila por p.id. Solo necesita definir los requisitos, y podemos ayudar ... –
¿ID de paciente es una clave primaria? – dan