Tengo una combinación de 5 tablas para obtener las tareas publicadas por cada miembro que tiene alrededor de 15 columnas. Pero para el código de muestra, he tomado solo dos tablas de ellos.Cómo obtener la última fila de la tabla usando JOIN
SELECT TOP 5
dbo.MemberMst.MemberID, dbo.MemberMst.fname,
dbo.TaskMst.TaskMstID, dbo.TaskMst.OnDate, dbo.TaskMst.Description
FROM
dbo.MemberMst
LEFT JOIN
dbo.TaskMst ON dbo.MemberMst.MemberID = dbo.TaskMst.MemberID
de salida es:
MemberID fname TaskMstID OnDate Description
3 Ursula NULL NULL NULL
84 Opeyemi 30 2012-09-18 00:00:00.000 asd
85 test 21 2012-09-18 10:30:46.900 aaa
85 test 22 2012-09-18 10:31:04.967 eeee
85 test 23 2012-09-18 10:31:26.640 vvvv
Aquí, en consulta anterior consigo 3 filas para MemberID=85
que ha publicado 3 tareas pero necesito una sola tarea a ese miembro que es la última. Cómo obtener la última tarea publicada por un miembro por lo que ese resultado sería: -
MemberID fname TaskMstID OnDate Description
3 Ursula NULL NULL NULL
84 Opeyemi 30 2012-09-18 00:00:00.000 asd
85 test 23 2012-09-18 10:31:26.640 vvvv
quiero decir simplemente sólo un registro por cada memberID
que tienen tareas?
¡Ayuda apreciada ..!
Gracias de antemano ...!
siento decir @John, pero esto no funciona ...! Error: la columna 'MemberID' se ha especificado varias veces para 'a'. –
@ SHEKHAR SHETE, en ese caso, especifique los nombres de las columnas explícitamente –
@SHEKHARSHETE; debe especificar explícitamente los nombres de las columnas en la subconsulta. Voy a actualizar mi respuesta. –