[ Foro de SQL (y MySQL) ]

Como utilizar un campo resultado de una consulta en una subconsulta

06-Jun-2018 19:38
Invitado (Lupis)
0 Respuestas

Me pueden dar una idea de que método usar para realizar una consulta en donde
utilizo un campo del resultado de una consulta(Encabezado) en otra subconsulta,
Les dejo el query que arme y si me funciona pero solo cuando le indico directamente el valor(idcliente), lo que yo quiero es que sea dinámico de acuerdo a la consulta encabezado.


SELECT p.*, CONCAT(r.NOMBRE, r.APPATERNO,r.APMATERNO) NombreRepresentante, c.NOMBRE, k.CantPronostico, k.CantModificado,
(SELECT SUM(b.CantidadActual)cantactual FROM pronosticoventasdet s
LEFT JOIN (SELECT d.id_producto,SUM(d.cantidad) CantidadActual FROM facturacion f
LEFT JOIN detfacturacion d ON d.facturaid=f.facturaid
WHERE YEAR(CONVERT(f.FechaEmiFactura,DATE))= '2017' AND f.estatusf=2 AND f.folioid=1 AND f.clienteid = 5827 /*AQUI ES DONDE REQUIERO QUE EL CLIENTE SE CAMBIE POR CADA CONSULTA DEL ENCABEZADO p.idCliente, Marca error porque el Interprete no lo reconoce */ GROUP BY d.id_producto
) b ON b.id_producto=s.ID_PRODUCTO
WHERE s.idPronostico = p.idPronostico
) CantidadActual
FROM pronosticoventas p
LEFT JOIN representantes r ON r.ID_REPRESENTANTE = p.representante
LEFT JOIN clientes c ON c.ID_CLIENTE = p.idCliente
LEFT JOIN (SELECT idPronostico, SUM(CantPronost) CantPronostico, SUM(CantModificado) CantModificado FROM pronosticoventasdet GROUP BY idPronostico) k ON k.idPronostico = p.idPronostico

Saludos.




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)