Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-05-2012
mjjj mjjj is offline
Miembro
 
Registrado: mar 2007
Posts: 652
Poder: 18
mjjj Va por buen camino
query relaciona 3 tablas

Amigos, aer si me pueden ayudar, utilizo Firebird 2.5, tengo 3 tablas Facturas, rendicion_detalle y rendicion. Estan relacionadas facturas.id_factura = rendicion_detalle.id_factura y rendicion.nren = rendicion_detalle.nren.

Necesito un query que me entregue todas las facturas tal que no existe en otro detalle de rendicion (o que exista pero el estado de la rendicion sea null). Ufff, esto con el afán de no repetir facturar en distintas rendiciones. Algo me falta, o sobra en este codigo...
Código SQL [-]
select f.* from facturas f
left join rendicion_detalle rd on rd.id_factura = f.id_factura
inner join rendicion r on r.nren = rd.nren
where r.estado is null
order by f.id_factura

Salu2
Responder Con Cita
  #2  
Antiguo 22-05-2012
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 24
ContraVeneno Va por buen camino
que tal

no logro entender la frase "todas las facturas tal que no existe en otro detalle de rendicion". ¿quieres todas las facturas que no existan en la rendición o quieres todas las facturas sin importar si existen en la rendición o no?
__________________

Responder Con Cita
  #3  
Antiguo 23-05-2012
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
podrias graficarlo con ejemplo de los datos?
algo asi


Cita:
facturas
001-0002530
001-0002531
001-0002532
001-0002533
Cita:
detalle
001-0002530
001-0002531
Cita:
rendicion
001-0002530
001-0002531
001-0002532

quiero como resultado esto.....

... ....
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #4  
Antiguo 23-05-2012
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
¿Podría ser?

Código SQL [-]
select f.* from facturas f where f.id_factura not in (Selectrendicion_detalle.id_factura FROM rendicion_detalle)
OR f.id_factura in(Select rendicion_detalle.id_factura FROM rendicion_detalle,rendicion WHERE 
rendicion.nren=rendicion_detalle.nren AND rendicion.estado is null)

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Query con 3 tablas Vichomo SQL 29 02-08-2007 20:12:24
Imprimir resultado de 2 tablas con un Query maravert Impresión 2 06-12-2006 17:57:59
nombre de las tablas en un query ercrizeporta Conexión con bases de datos 2 28-09-2006 17:30:46
Query a Tablas Paradox pelaorb68 Conexión con bases de datos 0 13-01-2006 23:25:25
Query con tablas temporales cartmanrules Firebird e Interbase 4 27-05-2004 10:23:47


La franja horaria es GMT +2. Ahora son las 23:32:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi