Ver Mensaje Individual
  #9 (permalink)  
Antiguo 03/05/2017, 11:06
Avatar de Fernarey1810
Fernarey1810
 
Fecha de Ingreso: noviembre-2008
Mensajes: 214
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: Se pueden combinar todas estas consultas en una sola o es imposible?

Cita:
Iniciado por Libras Ver Mensaje
Con un left join

Código MySQL:
Ver original
  1. select t1.idcompra, case when t2.idcliente is null then 'Ninguno' else t2.nombre end as nombre from compras as t1
  2. left join clientes as t2 on (t1.idcliente=t2.idcliente)
Te vuelvo a molestar, con esto que escribiste soluciono 2 de las 4 consultas que puse arriba:

Código SQL:
Ver original
  1. SELECT * FROM compras ;
  2.  
  3. SELECT * FROM clientes WHERE idcliente = '$row[idcliente]'

Como le agrego esta otra?

Código SQL:
Ver original
  1. SELECT * FROM pedidos_ventas WHERE idcompra = '$row[idcompra]'
La tabla
Código SQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `pedidos_ventas` (
  2.   `idpedido` INT(7) NOT NULL AUTO_INCREMENT,
  3.   `idcompra` INT(7) NOT NULL,
  4.   `idmercaderia` INT(7) NOT NULL,
  5.   `kilo` DOUBLE(7,2) NOT NULL,
  6.   `precio` DOUBLE(7,2) NOT NULL,
  7.   PRIMARY KEY (`idpedido`)
  8. ) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Aca puede haber varias mercaderias por pedido por eso idcompra(1,2,2,2,3,3,4...),
idpedido-idcompra-idmercaderia-kilo-precio
1-1
2-2
3-2
4-2
5-3
5-3
6-4
...
Estoy tratando de hacer todo lo que hago con varias consultas en 1 sola, pero realmente es muy complejo para mi, agradezco tu ayuda. Se ve asi al final: