Resultado de una consulta dentro de otra

09/02/2005 - 18:21 por Oriol | Informe spam
Hola a todos,

Me han comentado que existe una instrucción SQL de agrupamiento (como COUNT
o PIVOT), que te permite agrupar registros dentro de un solo campo separados
por comas, pero no he encontrado nada en los foros de consultas SQL que he
consultado.

La consulta en cuestión seria de este tipo

SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
"La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
FROM Puestos INNER JOIN
Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto

y tendría que devolver algo parecido a esto, o esa es la idea :-p

NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto
Programador 2 José, Pepe
Webmaster 3 María, Gertrudis,Juan
Administrador 1 Pedro

Muchas gracias a todos de antemano.

Oriol.

Preguntas similare

Leer las respuestas

#1 Maxi
09/02/2005 - 18:28 | Informe spam
Hola, me imagino que las , separan registros. Pues si es asi se te va a
hacer complejo manejarlo de esta manera, yo en estos casos armo en sql la
base de los datos y lo resuelvo luego en el cliente.

Tambien te voy a pasar este link, quizas pueda ayudarte en algo

http://www.configuracionesintegrale...p?articulo'5


Salu2
Maxi


"Oriol" <intranet[arroba]rvsa-itv.com> escribió en el mensaje
news:eg6r$
Hola a todos,

Me han comentado que existe una instrucción SQL de agrupamiento (como
COUNT
o PIVOT), que te permite agrupar registros dentro de un solo campo
separados
por comas, pero no he encontrado nada en los foros de consultas SQL que he
consultado.

La consulta en cuestión seria de este tipo

SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
"La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
FROM Puestos INNER JOIN
Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto

y tendría que devolver algo parecido a esto, o esa es la idea :-p

NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto
Programador 2 José, Pepe
Webmaster 3 María, Gertrudis,Juan
Administrador 1 Pedro

Muchas gracias a todos de antemano.

Oriol.


Respuesta Responder a este mensaje
#2 Maxi
09/02/2005 - 18:28 | Informe spam
Hola, me imagino que las , separan registros. Pues si es asi se te va a
hacer complejo manejarlo de esta manera, yo en estos casos armo en sql la
base de los datos y lo resuelvo luego en el cliente.

Tambien te voy a pasar este link, quizas pueda ayudarte en algo

http://www.configuracionesintegrale...p?articulo'5


Salu2
Maxi


"Oriol" <intranet[arroba]rvsa-itv.com> escribió en el mensaje
news:eg6r$
Hola a todos,

Me han comentado que existe una instrucción SQL de agrupamiento (como
COUNT
o PIVOT), que te permite agrupar registros dentro de un solo campo
separados
por comas, pero no he encontrado nada en los foros de consultas SQL que he
consultado.

La consulta en cuestión seria de este tipo

SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
"La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
FROM Puestos INNER JOIN
Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto

y tendría que devolver algo parecido a esto, o esa es la idea :-p

NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto
Programador 2 José, Pepe
Webmaster 3 María, Gertrudis,Juan
Administrador 1 Pedro

Muchas gracias a todos de antemano.

Oriol.


Respuesta Responder a este mensaje
#3 Steven Lewis
10/02/2005 - 06:11 | Informe spam
O te refieres a la instrucción SHAPE APPEND para crear cursores jerárqiucos?

Saludos

Steven Lewis

"Oriol" <intranet[arroba]rvsa-itv.com> escribió en el mensaje
news:eg6r$
Hola a todos,

Me han comentado que existe una instrucción SQL de agrupamiento (como
COUNT
o PIVOT), que te permite agrupar registros dentro de un solo campo
separados
por comas, pero no he encontrado nada en los foros de consultas SQL que he
consultado.

La consulta en cuestión seria de este tipo

SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
"La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
FROM Puestos INNER JOIN
Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto

y tendría que devolver algo parecido a esto, o esa es la idea :-p

NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto
Programador 2 José, Pepe
Webmaster 3 María, Gertrudis,Juan
Administrador 1 Pedro

Muchas gracias a todos de antemano.

Oriol.


Respuesta Responder a este mensaje
#4 Steven Lewis
10/02/2005 - 06:11 | Informe spam
O te refieres a la instrucción SHAPE APPEND para crear cursores jerárqiucos?

Saludos

Steven Lewis

"Oriol" <intranet[arroba]rvsa-itv.com> escribió en el mensaje
news:eg6r$
Hola a todos,

Me han comentado que existe una instrucción SQL de agrupamiento (como
COUNT
o PIVOT), que te permite agrupar registros dentro de un solo campo
separados
por comas, pero no he encontrado nada en los foros de consultas SQL que he
consultado.

La consulta en cuestión seria de este tipo

SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
"La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
FROM Puestos INNER JOIN
Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto

y tendría que devolver algo parecido a esto, o esa es la idea :-p

NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto
Programador 2 José, Pepe
Webmaster 3 María, Gertrudis,Juan
Administrador 1 Pedro

Muchas gracias a todos de antemano.

Oriol.


Respuesta Responder a este mensaje
#5 Oriol
10/02/2005 - 09:40 | Informe spam
Hola Maxi,

No, las , no separan registros. Lo que queremos es que en la tercera columna
de los resultados sea una concatenacion de los registros de otra consulta.

A ver si puedo explicarme un poco mejor. Tenemos una consulta que nos
devuelve el numero de trabajadores en cada puesto, pero tambien queremos
tener los nombres de dichos trabajadores. Como esto esta en otra tabla,
tendriamos que hacer otra consulta, pero nos interesa mucho tenerlo en la
misma tabla de resultados.

Con lo cual, el tercer registro de los resultados donde aparecen los nombres
seria una concatenacion de los resultados de una consulta. Por ejemplo, la
consulta de la primera fila seria "SELECT Nombre FROM Trabajadores WHERE
puesto=Programador" y aqui nos devolveria 2 registros con José y Pepe, y
queremos poner esto como una concatenacion en el registro de la tabla
resultados.

No se si me explico, creo que si.

Me he mirado el link, pero me parece que no es exactamente lo que necesito.

Gracias de antemano,
Oriol.

"Maxi" escribió en el mensaje
news:
Hola, me imagino que las , separan registros. Pues si es asi se te va a
hacer complejo manejarlo de esta manera, yo en estos casos armo en sql la
base de los datos y lo resuelvo luego en el cliente.

Tambien te voy a pasar este link, quizas pueda ayudarte en algo




http://www.configuracionesintegrale...p?articulo'5


Salu2
Maxi


"Oriol" <intranet[arroba]rvsa-itv.com> escribió en el mensaje
news:eg6r$
> Hola a todos,
>
> Me han comentado que existe una instrucción SQL de agrupamiento (como
> COUNT
> o PIVOT), que te permite agrupar registros dentro de un solo campo
> separados
> por comas, pero no he encontrado nada en los foros de consultas SQL que


he
> consultado.
>
> La consulta en cuestión seria de este tipo
>
> SELECT NombrePuesto, COUNT (IdTrabajador) AS TotalTrabajadores,
> "La instrucción" ("Los campos") AS NombreTrabajadoresdelPuesto
> FROM Puestos INNER JOIN
> Trabajadores ON Puestos.pu_IdPuesto = Trabajadores.tra_IdPuesto
>
> y tendría que devolver algo parecido a esto, o esa es la idea :-p
>
> NombrePuesto TotalTrabajadores NombreTrabajadoresdelPuesto

> Programador 2 José, Pepe
> Webmaster 3 María,


Gertrudis,Juan
> Administrador 1 Pedro
>
> Muchas gracias a todos de antemano.
>
> Oriol.
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida