Ayuda con una consulta!!!

22/10/2005 - 01:46 por [David] | Informe spam
Saludos.
tengo una BdD con las sig. tablas:
empleado (nombre-empleado,calle,ciudad)
trabaja (nombre-empleado,nombre-empresa,sueldo)
empresa(nombre-empresa,ciudad)
jefe(nombre-empleado,nombre-jefe)
los campos subrayados son las llaves primarias.

Y debo buscar que los empleados vivan en la misma ciudad y calle que sus
jefes. aqui la relacion de las tablas seria empleado con jefe, los jefes
existen tanto en la de empleados como en la de jefe, asi como los empleados.

use ortegas_database
select empleado.[nombre-empleado]
from empleado join jefe
on empleado.[nombre-empleado]=jefe.[nombre-empleado]

No se como hacerle, en este caso!!!.

Ademas en otra consulta aparte, que empresa tiene el mayor numero de
empleados, en esta se trabajaria con la tabla trabaja.

select [nombre-empresa]
from trabaja t1
group by [nombre-empresa]
having count([nombre-empresa])>(select count ([nombre-empresa]) from trabaja
t2 )

y pues no se como usar el max en combinacion con el count, ya que pues no se
permite eso (max (count(*)) ), verdad??
Ayuda por favor.
De antemano, gracias.

Preguntas similare

Leer las respuestas

#1 Maxi \(MVP SQL\)
22/10/2005 - 01:57 | Informe spam
Hola, como identificas a los empleados de los jefes si estan en la misma
tabla?


-
[MS-MVP SQL SERVER]

"[David]" escribió en el mensaje
news:%
Saludos.
tengo una BdD con las sig. tablas:
empleado (nombre-empleado,calle,ciudad)
trabaja (nombre-empleado,nombre-empresa,sueldo)
empresa(nombre-empresa,ciudad)
jefe(nombre-empleado,nombre-jefe)
los campos subrayados son las llaves primarias.

Y debo buscar que los empleados vivan en la misma ciudad y calle que sus
jefes. aqui la relacion de las tablas seria empleado con jefe, los jefes
existen tanto en la de empleados como en la de jefe, asi como los
empleados.

use ortegas_database
select empleado.[nombre-empleado]
from empleado join jefe
on empleado.[nombre-empleado]=jefe.[nombre-empleado]

No se como hacerle, en este caso!!!.

Ademas en otra consulta aparte, que empresa tiene el mayor numero de
empleados, en esta se trabajaria con la tabla trabaja.

select [nombre-empresa]
from trabaja t1
group by [nombre-empresa]
having count([nombre-empresa])>(select count ([nombre-empresa]) from
trabaja t2 )

y pues no se como usar el max en combinacion con el count, ya que pues no
se permite eso (max (count(*)) ), verdad??
Ayuda por favor.
De antemano, gracias.


Respuesta Responder a este mensaje
#2 [David]
22/10/2005 - 02:05 | Informe spam
en la tabla de jefe jefe(nombre-empleado,nombre-jefe)
el primer campo es primario, el segundo es el del jefe, es decir que se
puede repetir el segundo campo, pero no el primero (primario):
nombre-empleado nombre-jefe
olivia david
jorge david
pedro jose

claro que estos nombre primero deben existir primero en la tabla empleado.

"Maxi (MVP SQL)" wrote in message
news:
Hola, como identificas a los empleados de los jefes si estan en la misma
tabla?


-
[MS-MVP SQL SERVER]

"[David]" escribió en el mensaje
news:%
Saludos.
tengo una BdD con las sig. tablas:
empleado (nombre-empleado,calle,ciudad)
trabaja (nombre-empleado,nombre-empresa,sueldo)
empresa(nombre-empresa,ciudad)
jefe(nombre-empleado,nombre-jefe)
los campos subrayados son las llaves primarias.

Y debo buscar que los empleados vivan en la misma ciudad y calle que sus
jefes. aqui la relacion de las tablas seria empleado con jefe, los jefes
existen tanto en la de empleados como en la de jefe, asi como los
empleados.

use ortegas_database
select empleado.[nombre-empleado]
from empleado join jefe
on empleado.[nombre-empleado]=jefe.[nombre-empleado]

No se como hacerle, en este caso!!!.

Ademas en otra consulta aparte, que empresa tiene el mayor numero de
empleados, en esta se trabajaria con la tabla trabaja.

select [nombre-empresa]
from trabaja t1
group by [nombre-empresa]
having count([nombre-empresa])>(select count ([nombre-empresa]) from
trabaja t2 )

y pues no se como usar el max en combinacion con el count, ya que pues no
se permite eso (max (count(*)) ), verdad??
Ayuda por favor.
De antemano, gracias.






Respuesta Responder a este mensaje
#3 Liliana Sorrentino
24/10/2005 - 18:47 | Informe spam
SELECT j.nombre_jefe, j.nombre_empleado, e1.calle, e1.ciudad
FROM jefe j
INNER JOIN empleado e1 ON j.nombre_jefe = e1.nombre_empleado
INNER JOIN empleado e2 ON j.nombre_empleado = e2.nombre_empleado
WHERE e1.calle = e2.calle AND e1.ciudad = e2.ciudad

SELECT TOP 1 e.nombre_empresa, ciudad, Cantidad = count(*)
FROM empresa e
INNER JOIN trabaja t ON e.nombre_empresa = t.nombre_empresa
GROUP BY e.nombre_empresa, ciudad
ORDER BY 3 DESC

"[David]" escribió en el mensaje
news:
en la tabla de jefe jefe(nombre-empleado,nombre-jefe)
el primer campo es primario, el segundo es el del jefe, es decir que se
puede repetir el segundo campo, pero no el primero (primario):
nombre-empleado nombre-jefe
olivia david
jorge david
pedro jose

claro que estos nombre primero deben existir primero en la tabla empleado.

"Maxi (MVP SQL)" wrote in message
news:
> Hola, como identificas a los empleados de los jefes si estan en la misma
> tabla?
>
>
> -
> [MS-MVP SQL SERVER]
>
> "[David]" escribió en el mensaje
> news:%
>> Saludos.
>> tengo una BdD con las sig. tablas:
>> empleado (nombre-empleado,calle,ciudad)
>> trabaja (nombre-empleado,nombre-empresa,sueldo)
>> empresa(nombre-empresa,ciudad)
>> jefe(nombre-empleado,nombre-jefe)
>> los campos subrayados son las llaves primarias.
>>
>> Y debo buscar que los empleados vivan en la misma ciudad y calle que


sus
>> jefes. aqui la relacion de las tablas seria empleado con jefe, los


jefes
>> existen tanto en la de empleados como en la de jefe, asi como los
>> empleados.
>>
>> use ortegas_database
>> select empleado.[nombre-empleado]
>> from empleado join jefe
>> on empleado.[nombre-empleado]=jefe.[nombre-empleado]
>>
>> No se como hacerle, en este caso!!!.
>>
>> Ademas en otra consulta aparte, que empresa tiene el mayor numero de
>> empleados, en esta se trabajaria con la tabla trabaja.
>>
>> select [nombre-empresa]
>> from trabaja t1
>> group by [nombre-empresa]
>> having count([nombre-empresa])>(select count ([nombre-empresa]) from
>> trabaja t2 )
>>
>> y pues no se como usar el max en combinacion con el count, ya que pues


no
>> se permite eso (max (count(*)) ), verdad??
>> Ayuda por favor.
>> De antemano, gracias.
>>
>>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida