Access - Coger un registro de cada proyecto SQL

 
Vista:

Coger un registro de cada proyecto SQL

Publicado por Bello (4 intervenciones) el 20/04/2016 10:28:15
Buenos días,

Tengo una tabla llamada RESPONSABLES_PROY con tres campos: Id, Cod_Proyecto, Cod_Responsable.
Esta tabla relaciona los proyectos con los múltiples responsables que puede tener. Por ejemplo:

Id | Cod_Proyecto | Cod_Responsable
1 | 123456 | 1
2 | 123456 | 2
3 | 666666 | 3
4 | 666666 | 4
5 | 777777 | 5

Mi objetivo es obtener un único responsables por proyecto (el que menor Id tenga asignado, es decir, el primero asignado), para que quede algo así como:

Id Cod_Proyecto Cod_Responsable
1 123456 1
3 666666 3
5 777777 5

No consigo obtener una consulta SQL que me muestre este resultado. ¿Alguien me puede dar algo de luz con alguna consulta que me sirva para obtenerlo?

Un saludo y muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Coger un registro de cada proyecto SQL

Publicado por Enrique Heliodoro (1664 intervenciones) el 20/04/2016 10:54:55
Esa consulta debería 'salir ella sola' ....
Una consulta de DATOS AGRUPADOS, que agrupe por 'cod_proyecto' y que en 'ID' y en 'Cod_Responsable' en lugar de agrupar se seleccione 'Primero' debería ofrecer esos resultados .....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Coger un registro de cada proyecto SQL

Publicado por Bello (4 intervenciones) el 20/04/2016 13:30:54
Buenos días,

Pero cuando agrupamos una respuesta no es posible seleccionar el primer registro de otro campo. Quiero decir, cuando hacemos un GROUP BY sólo podemos seleccionar un campo de salida (en este caso Cod_Proyecto)

¿Alguna idea de la consulta?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Coger un registro de cada proyecto SQL

Publicado por Enrique Heliodoro (1664 intervenciones) el 20/04/2016 13:42:33
¿Lo has intentado? ...
¿Qué has intentado ? ....

Inténtalo y analiza fríamente lo que obtienes (yo carezco de tus datos reales para hacer un ejemplo, los 'míos' no servirían (tal como lo planteas incluso podrías llegar a pensar que 'estaban trucados')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Coger un registro de cada proyecto SQL

Publicado por Bello (4 intervenciones) el 20/04/2016 13:58:20
Buenas Enrique,

Planteo la pregunta en el foro porque no tengo el conocimiento de qué consultas tengo que hacer para obtener el resultado que quiero. Agradezco mucho tus aportaciones pero sinceramente para comentar que "analice friamente" lo obtengo.. mejor no decir nada.

Obviamente he probado muchas combinaciones de consultas con GROUP BY, TOP 1... pero tengo mis dudas que sea posible realizar lo que pretendo obtener.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Coger un registro de cada proyecto SQL

Publicado por Enrique Heliodoro (1664 intervenciones) el 20/04/2016 14:51:05
¿Por qué no leéis y después juzgais?... si ha lugar a ello

He creado una tabla (tabla7) con esos nombres de campos, he introducido los datos de muestra y GENERADO una consulta que a continuación expongo en formato SQL, la cual DEVUELVE EXACTAMENTE lo que deseas obtener.

SELECT First(Tabla7.ID) AS PrimeroDeID, Tabla7.Cod_Proyecto, First(Tabla7.Cod_Responsable) AS PrimeroDeCod_Responsable
FROM Tabla7
GROUP BY Tabla7.Cod_Proyecto;

No dispongo de mas datos que los publicados, probablemente en el 'entorno real' los resultados difieran, es en ese punto en el cual (y en base a analizar los datos resultantes) se puede modificar y ajustar la consulta para obtener datos coherentes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Coger un registro de cada proyecto SQL

Publicado por Bello (4 intervenciones) el 20/04/2016 16:00:20
Buenas tardes Enrique,

Gracias por tu ayuda, efectivamente la sentencia que desconocía era la de 'FIRST' y me ha resultado muy últi para solucionar el problema. Es de bien nacido el ser agradecido, así que muchas gracias por tu ayuda!!

Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Coger un registro de cada proyecto SQL

Publicado por Enrique Heliodoro (1664 intervenciones) el 20/04/2016 17:57:28
Que el editor de SQL traduzca lo de 'primero' a 'first', no lo elimina de la lista de opciones del desplegable.

Si se toma esa SQL y se pega en el editor de consultas, al 'cambiarla' a vista diseño se puede apreciar lo elemental que es.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar