none
sacar una condicion mysql como global RRS feed

  • Pregunta

  • SELECT vendedores.Nombre,(SELECT  SUM(factura.Total) FROM factura WHERE 
    vendedores.Codigo=factura.CodigoVendedor AND factura.Tipo='Factura'
    AND factura.Fecha BETWEEN '2018-09-13' AND '2018-09-14' GROUP BY vendedores.Nombre)+(SELECT  SUM(sales.Total) FROM sales WHERE 
    vendedores.Codigo=sales.CodigoVendedor 
    AND sales.Fecha BETWEEN '2018-09-13' AND '2018-09-14' GROUP BY vendedores.Nombre)+(SELECT SUM(abonos.Abono) FROM abonos,saldos WHERE abonos.NumFactura=saldos.NumFactura AND saldos.CodigoVendedor=vendedores.Codigo AND abonos.Fecha BETWEEN '2018-09-13' AND '2018-09-14' GROUP BY vendedores.Nombre)
    FROM vendedores

    como hago para que el between fecha me quede despues de from vendedores y aplique igual como ahorita

    miércoles, 26 de septiembre de 2018 4:32

Todas las respuestas

  • Hola rix0386:

    ¿Cúal es el sentido de poner la fecha despues de from vendedores?

    Vendedores, tiene fecha???

    Lo que haces en la consulta es literalmente:

    Dame la columna nombre vendedor  y..... mas columnas de vendedores.

    Vendedores es la única tabla del from, y no parece que sea una columna propia de ellos.

    Luego en ....mas columnas, haces tres subconsultas, sumando el valor que resuelve cada una, en un sólo número. Estas tres subconsultas, tienen fecha, porque tanto facturas, como saldos, como abonos, seguro que disponen de esa propiedad.

    Si tu objetivo es simplemente pintar lo filtrado, puedes, para no cambiarte el sentido de la consulta, devolver al lado del nombre del vendedor, los literales de fecha filtrados.

    Select vendedores.Nombre, '2018-09-13' as FechaFiltradoDesde, '2018-09-14' as FechaFiltradohasta, (Sele.......

    Un saludo

    miércoles, 26 de septiembre de 2018 5:56