Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Mostrar información de dos tablas distintas en un mismo DbGrid... (https://www.clubdelphi.com/foros/showthread.php?t=72141)

verito_83mdq 30-01-2011 15:21:23

Mostrar información de dos tablas distintas en un mismo DbGrid...
 
Holaa Como andan???? Bueno como dice el titulo el asunto es el siguiente,
tengo dos tablas una pago_efectivo y otra pago_tarjeta.

Cada tabla con sus campos correspondiente el único campo que tienen en común es el ID_Cliente.

El problema es que cuando quiero ver los pagos del cliente en el DBGrid me tendría que mostrar la info de ambas tablas osea todos los pagos en efectivo y los pagos realizados con tarjeta.Sera posible hacer esto?.

La sentencia Sql que estoy usando es esta, pero no me muestra todos los pagos:

Código SQL [-]
Select pago_efectivo.*, pago_tarjeta.* from pago_efectivo,pago_tarjeta Where pago_efectivo.ID_Cliente=113 and pago_tarjeta.ID_Cliente=113;

Alguna sugerencia?? Desde ya muchas gracias!!!;)

Casimiro Notevi 30-01-2011 15:28:59

Lo lógico es tener una sola tabla con un campo más que sea: formadepago.
De esa manera puedes extraer los datos por distintas formas de pago o todas juntas.
En tu caso, creo que con cambiar el 'and' por un 'or' ya te saldrán todas, ¿no?

verito_83mdq 30-01-2011 15:56:54

Hola Casimiro Notevi!! Gracias por responder!

Claro yo lo hice en dos tablas pensando que es mas prolijo tener una para efectivo y otra para tarjeta.

En la tabla efectivo tengo los siguientes campos: ID_Pago,Monto,Fecha_Pago,ID_Cliente,Borrado_Logico,Fecha_Carga_Sistema.

En la tabla tarjeta tengo los siguientes campos:
ID_Pago,Monto,Fecha_Pago,ID_Cliente,Borrado_Logico,Fecha_Carga_Sistema,ID_Tarjeta,
Cuotas,PostNet.

Que me aconsejan una sola tabla? Muchas gracias!

Casimiro Notevi 30-01-2011 16:20:08

Yo lo haría en una tabla, pero si por algún motivo prefieres en dos.

abelg 31-01-2011 13:54:53

Si tienes dos tablas con estructura similar y almacenas pagos para diferenciarlos sola mente, es lo más aproximado que te puedo dar lo siguiente.

Select id_cielnte,
fecha_pago,
monto,
'Efectivo'as tipo_pago
from pago_efectivo
where id_cliente = xxx
union
Select
id_cleinte,
fecha_pago,
monto,
'Con Tarjeta'as tipo_pago
from pago_tarjeta
where id_cliente = xxx
orderby fecha_pago


verito_83mdq 31-01-2011 14:06:20

Gracias abelg y Casimiro!! Por el momento hice una sola tabla pagos, y ahí entra efectivo y tarjeta, igual por las dudas no borre las otras tablas anteriores así que si no me gusta te hago caso abelg. Muchas Gracias a los dos!! Saludos!!!;)


La franja horaria es GMT +2. Ahora son las 18:19:22.

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