SQL - Ayuda con consulta donde espero 0 registros

 
Vista:
sin imagen de perfil

Ayuda con consulta donde espero 0 registros

Publicado por Kenneth (4 intervenciones) el 03/06/2014 19:44:52
Tengo 3 tablas relacionadas que son PE ( personal) , CTS(cuotas) , MCT (movimientos sobre cuotas) donde se ligan PE con CTS y CTS con MCT tengo que realizar una consulta con la cual muestre todas las personas de personal que no tengan ningun movimiento sobre cuotas osea que no tengan ningun registro en MCT pero MCT no cuenta con un campo de personal. por favor necesito ayuda las tablas y llaves son asi:

PE
llaves primarias
CDGEM
CODIGO

CTS
llaves primarias
CODIGO
CDGEM ------> se relaciona con PE.CDGEM
CDGPE ------> se relaciona con PE.CODIGO

MCT
llaves primarias
CDGEM ------->se relaciona con CTS.CDGEM
CDGCTS ------->se relaiona con CTS.CODIGO

Espero que me puedan ayudar
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
Imágen de perfil de xve
Val: 135
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Ayuda con consulta donde espero 0 registros

Publicado por xve (284 intervenciones) el 03/06/2014 20:34:01
Hola Kenneth, segun veo, el campo:

CTS.CDGEM ------> se relaciona con PE.CDGEM
y
MCT.CDGEM ------->se relaciona con CTS.CDGEM
entonces quiere decir que:
MCT.CDGEM ------->se relaciona con PE.CDGEM

lo digo bien?
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

Ayuda con consulta donde espero 0 registros

Publicado por Karol Kenneth (4 intervenciones) el 03/06/2014 20:45:16
PUES si las 3 tablas tienen el campo CDGEM
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
Imágen de perfil de xve
Val: 135
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Ayuda con consulta donde espero 0 registros

Publicado por xve (284 intervenciones) el 04/06/2014 07:54:24
Haber que tal este código...
1
2
SELECT * FROM PE LEFT JOIN MCT ON PE.CDGEM=MCT.CDGEM
WHERE MCT.CDGEM IS NULL

Coméntanos, ok?
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

Ayuda con consulta donde espero 0 registros

Publicado por Karol Kenneth (4 intervenciones) el 03/06/2014 21:10:18
Que es lo que puedo hacer entonces
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

Ayuda con consulta donde espero 0 registros

Publicado por Karol Kenneth (4 intervenciones) el 03/06/2014 21:12:41
Lo que tengo ke hacer es mostrar las personas que tengan registros en CTS pero que no tengan ningun registro en MCT
o en otras palabras las personas que tengan cuotas pero que no tengan ningun movimiento
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
Val: 109
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Ayuda con consulta donde espero 0 registros

Publicado por Rafael (111 intervenciones) el 03/06/2014 21:21:38
SIMPLE...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT *
FROM PE
WHERE EXISTS (
SELECT *
FROM  CTS
WHERE CTS.CDGEN = PE.CDGEM
AND CTS.CDGPE  = PE.CODIGO
AND NO EXISTS (
SELECT *
FROM  MCT
WHERE MCT.CDGEM = CTS.CDGEM
AND MCT.CDGCTS = CTS.CODIGO
)
)

Prueba y nos cuentas como te ha ido ...
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