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 31-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
JOJOJO, ya pudee.. gracias de todas maneras, aqui esta el query que me funciono, solo le agrege 2 filitas mas.

Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo
From Clientes Inner Join Remisiones On Clientes.cvecli=Remisiones.cvecli
Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem
inner join productos on detalle_remision.cvepro=productos.cvepro
where detalle_remision.cvepro=1 or detalle_remision.cvepro=2
Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo
Responder Con Cita
  #2  
Antiguo 31-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Exclamation Aun mas del mismo query

Hola, oigan saben como hacer que me traiga todos los clientes, osea quiero todos los registros aunque el valor sea nulo, en especifico del mismo query que puse arriba que ustedes me ayudaron a hacerlo, el resultado es la suma de tods los clientes que han remisionado, pero solo me aparecen los que han comprado del producto 1 y 2, pero quiero que me aparezcan todos los clientes que hay en la tabla, aunque la suma sea Null, eh probado el LEFT JOIN, quite el INNER JOIN y lo probe pero no me resulto, me servirian muchos sus comentarios, muchas gracias!!
Responder Con Cita
  #3  
Antiguo 31-07-2007
Avatar de TheFlame
TheFlame TheFlame is offline
Miembro
 
Registrado: jul 2007
Posts: 12
Poder: 0
TheFlame Va por buen camino
Talking Podria ser asi.

Cita:
Empezado por Vichomo

Código SQL [-]Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo
From Clientes Inner Join Remisiones On Clientes.cvecli=Remisiones.cvecli
Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem
inner join productos on detalle_remision.cvepro=productos.cvepro
where detalle_remision.cvepro=1 or detalle_remision.cvepro=2
Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo


Hola, me alegra que mi aporte te sirviera.
Para que obtengas todos los registros de tu tabla Clientes tendrías que hacer los Joins con Right o Left, a mí parecer debería funcionar con Right, la consulta llegaría a ser de la siguiente forma:


Código SQL [-]Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo

Código SQL [-]
From Clientes Right Join Remisiones On Clientes.cvecli=Remisiones.cvecli
Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem
inner join productos on detalle_remision.cvepro=productos.cvepro
where detalle_remision.cvepro=1 or detalle_remision.cvepro=2
Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo




Nota: Solo el cambio fue en el primer Join, porque queremos mostrar todos los resultados de la tabla Clientes si es que no funciona con Right cámbialo por Left

Saludos.
Responder Con Cita
  #4  
Antiguo 31-07-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Cool sigue el mismo resultado

Cita:
Empezado por TheFlame
Hola, me alegra que mi aporte te sirviera.
Para que obtengas todos los registros de tu tabla Clientes tendrías que hacer los Joins con Right o Left, a mí parecer debería funcionar con Right, la consulta llegaría a ser de la siguiente forma:


Código SQL [-]Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo

Código SQL [-]
From Clientes Right Join Remisiones On Clientes.cvecli=Remisiones.cvecli
Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem
inner join productos on detalle_remision.cvepro=productos.cvepro
where detalle_remision.cvepro=1 or detalle_remision.cvepro=2
Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo




Nota: Solo el cambio fue en el primer Join, porque queremos mostrar todos los resultados de la tabla Clientes si es que no funciona con Right cámbialo por Left

Saludos.
Oie amigo, no funciono, lo cambie por Left y tampoco funciono, que estara mal?
Responder Con Cita
  #5  
Antiguo 31-07-2007
Avatar de TheFlame
TheFlame TheFlame is offline
Miembro
 
Registrado: jul 2007
Posts: 12
Poder: 0
TheFlame Va por buen camino
Red face Ups..

Ups. Te ruego que me disculpes por olvidar colocar una palabra más en la consulta. La cual quedaría como sigue:

Código SQL [-]
Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo
From Clientes  Right Outer Join Remisiones On Clientes.cvecli=Remisiones.cvecli
Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem
inner join productos on detalle_remision.cvepro=productos.cvepro
where detalle_remision.cvepro=1 or detalle_remision.cvepro=2
Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo

Espero que esta si te de el resultado que esperas.
Saludos.
Responder Con Cita
  #6  
Antiguo 01-08-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Cita:
Empezado por TheFlame
Ups. Te ruego que me disculpes por olvidar colocar una palabra más en la consulta. La cual quedaría como sigue:

Código SQL [-]Select Clientes.cvecli, Clientes.razso, Sum(Detalle_remision.canti) as Emulsion, Clientes.Saldo From Clientes Right Outer Join Remisiones On Clientes.cvecli=Remisiones.cvecli Inner join Detalle_remision on Remisiones.cverem=Detalle_remision.cverem inner join productos on detalle_remision.cvepro=productos.cvepro where detalle_remision.cvepro=1 or detalle_remision.cvepro=2 Group By Clientes.cvecli, Clientes.razso, Clientes.Saldo


Espero que esta si te de el resultado que esperas.
Saludos.
Que crees amigooo ???? Nada, me sigue dando el mismo resultado, no hay diferencia alguna solo poniendole inner join, o left join, o right join, o right outer join o left outer join, me urge, que sera mi amigo?
Responder Con Cita
  #7  
Antiguo 01-08-2007
Avatar de TheFlame
TheFlame TheFlame is offline
Miembro
 
Registrado: jul 2007
Posts: 12
Poder: 0
TheFlame Va por buen camino
¿Con que motor de base de datos estas Trabajando?
la ultima consulta que te mande funciona con SQL Server 2000.
Saludos.

Última edición por TheFlame fecha: 01-08-2007 a las 17:13:17.
Responder Con Cita
  #8  
Antiguo 01-08-2007
Vichomo Vichomo is offline
Miembro
 
Registrado: jul 2007
Posts: 21
Poder: 0
Vichomo Va por buen camino
Wink

Cita:
Empezado por TheFlame
¿Con que motor de base de datos estas Trabajando?
la ultima consulta que te mande funciona con SQL Server 2000.
Saludos.
Trabajo con Interbase 6, pero fijate que si sirve el Rigth Outer Join, porque lo he hecho en otras consultas menos complicadas y si me trae campos nulos, pero en esta no. porque sera, agradezco tu ayuda...
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
Imprimir resultado de 2 tablas con un Query maravert Impresión 2 06-12-2006 17:57:59
Query entre dos tablas de distintas databases tefots Firebird e Interbase 2 06-11-2006 15:28:29
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 16:09:46.


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