Tengo las Tablas Ventas_web, Ventas_presenciales y CuentasXCobrar
y la Query :
Código:
El resultado es el siguiente: SELECT CC.PERIODO, CC.ID, CC.FACTURA, CC.FECHA, CC.MONTO, Q.FECHA_PAGO, Q.METODO, MIN(ABS(DATEDIFF(DAY,CC.FECHA, Q.FECHA_PAGO))) AS DIAS_PAGO FROM CuentasXCobrar CC LEFT JOIN ( SELECT PERIODO, ID, MONTO, FECHA, 'WEB' AS METODO FROM Tablas Ventas_web UNION PERIODO, ID, MONTO, FECHA, 'ATC' AS METODO FROM Ventas_presenciales ) Q ON CC.ID = Q.ID AND CC.PERIODO = Q.PERIODO
| PERIODO | ID | FACTURA | FECHA | MONTO | PAGO | METODO | DIAS_PAGO |
---------------------------------------------------------------------------------------------------------------------------------------
| 201902 | 490 | 160175 | 2019-02-14 | 5,228 | 2019-02-28 | WEB | 14 |
| 201902 | 490 | 160175 | 2019-02-14 | 5,233 | 2019-02-28 | ATC | 14 |
| 201902 | 1402 | 241286 | 2019-02-21 | 5,491 | 2019-02-26 | ATC | 5 |
| 201902 | 4031 | 165041 | 2019-02-21 | 4,345 | 2019-02-26 | ATC | 5 |
| 201902 | 1415 | 650418 | 2019-02-18 | 4,345 | 2019-02-20 | ATC | 2 |
| 201902 | 1415 | 650418 | 2019-02-18 | 5,228 | 2019-02-19 | ATC | 1 |
---------------------------------------------------------------------------------------------------------------------------------------
Necesito que los clientes que hicieron más de 1 abono en el mismo periodo se muestren como 1 sola linea, y el monto se muestre en 2 columnas, siendo el método y día de pago referencial el más cercano a cero :
|PERIODO | ID | FACTURA | FECHA | MONTO | MONTO_2 | PAGO | METODO|DIAS_PAGO|
-------------------------------------------------------------------------------------------------------------------
|201902 | 490 | 160175 | 2019-02-14 | 5,228 | 5,233 | 2019-02-28 | WEB | 14 |
|201902 | 1402 | 241286 | 2019-02-21 | 5,491 | 0.00 | 2019-02-26 | ATC | 5 |
|201902 | 4031 | 165041 | 2019-02-21 | 4,345 | 0.00 | 2019-02-26 | ATC | 5 |
|201902 | 1415 | 650418 | 2019-02-18 | 4,345 | 5,228 | 2019-02-20 | ATC | 1 |
------------------------------------------------------------------------------------------------------------
je dado varias vueltas y no he visto forma de solucionarlo, necesito hacer sin usar tablas temporales.