
16/11/2017, 07:50
|
| | Fecha de Ingreso: mayo-2004
Mensajes: 903
Antigüedad: 20 años, 9 meses Puntos: 4 | |
Select a tres tablas con el id de una Hola a todos/as.
Tengo una tabla cliente en que registro los mismos y después estos pueden commprar con factura a o b.
Tengo dos tablas factura y facturaa.
el id_cliente se toma de la tabla cliente y en cada factura se registra en la a o b como id_cliente.
necesito para hacer un reporte en jasperreports usando la consulta que me seleccione todas las facturas a y aa que tengan el mismo id_cliente o los id_cliente que estén en una u otra solamente.
Logro traerlos pero me los repite los registros o me toma todo mezclado.
Gracias!!
Código:
SELECT clie.nombre_cliente, fac.id_factura, fac.id_cliente, fac.fecha_factura, fac.tipo_factura, fac.total, faca.id_factura, faca.id_cliente, faca.fecha_factura, faca.tipo_factura, faca.total
FROM clientes AS clie
JOIN factura AS fac ON clie.id_cliente = fac.id_cliente
LEFT JOIN facturaa AS faca ON clie.id_cliente = faca.id_cliente
WHERE clie.id_cliente = '26'
esa es la consulta.
Tabla factura
Código:
CREATE TABLE `factura` (
`id_factura` int(11) unsigned NOT NULL auto_increment,
`id_cliente` int(11) default NULL,
`fecha_factura` varchar(70) NOT NULL,
`tipo_factura` varchar(4) NOT NULL,
`formade_pago` varchar(70) NOT NULL,
`total` double NOT NULL,
PRIMARY KEY (`id_factura`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=221 ;
Código:
Tabla facturaa
Código:
CREATE TABLE `facturaa` (
`id_factura` int(11) unsigned NOT NULL auto_increment,
`id_cliente` int(11) NOT NULL,
`fecha_factura` varchar(70) NOT NULL,
`tipo_factura` varchar(4) NOT NULL,
`total` double NOT NULL,
PRIMARY KEY (`id_factura`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=78 ;
tabla clientes CREATE TABLE `clientes` (
`id_cliente` int(11) unsigned zerofill NOT NULL auto_increment,
`nombre_cliente` varchar(50) NOT NULL,
`dni_cliente` varchar(12) NOT NULL,
`direccion_cliente` varchar(80) NOT NULL,
`telefono_cliente` varchar(12) default NULL,
`email_cliente` varchar(60) default NULL,
`direccionparaenvios` varchar(300) default NULL,
PRIMARY KEY (`id_cliente`),
UNIQUE KEY `dni_cliente` (`dni_cliente`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ; |