Query con CASE e INNER JOIN
Publicado por CARLOS A (5 intervenciones) el 11/07/2018 18:30:36
Tengo dos tablas, en una se guardan la información de ventas en otra los datos del cliente.
El la tabla de ventas, se registran las devoluciones, pero no se registran en negativo.
Deseo hacer un query que liga las dos tablas y que cuando sea una devolución el importe me lo ponga en negativo, para eso utilizo el CASE, pero me marca un error al ejecutarlo.
Parece que es un problema con el INNER JOIN porque si modifico el query sin ligar las tablas, se ejecuta con normalidad.
El query es:
El mensaje de error que marca es:
Mens. 102, Nivel 15, Estado 1, Línea 17
Sintaxis incorrecta cerca de '='.
El la tabla de ventas, se registran las devoluciones, pero no se registran en negativo.
Deseo hacer un query que liga las dos tablas y que cuando sea una devolución el importe me lo ponga en negativo, para eso utilizo el CASE, pero me marca un error al ejecutarlo.
Parece que es un problema con el INNER JOIN porque si modifico el query sin ligar las tablas, se ejecuta con normalidad.
El query es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SELECT
VENTA.Mov,
VENTA.MovID,
CASE VENTA.Mov
WHEN 'DEVOLUCION VENTA'
THEN 0-Venta.Importe
WHEN 'DEVOLUCION GARANTIA'
THEN 0-Venta.Importe
ELSE VENTA.Importe
END AS ImporteFactura,
VENTA.FechaEmision,
VENTA.Ejercicio,
VENTA.Periodo,
VENTA.Cliente,
Cte.NOMBRE,
Cte.RAMA,
Cte.Descripcion18=NULL
FROM Venta INNER JOIN CTE ON VENTA.CLIENTE = CTE.CLIENTE
WHERE VENTA.FECHAEMISION>='01/01/2018' AND VENTA.Mov IN ('FACTURA', 'DEVOLUCION VENTA', 'DEVOLUCION GARANTIA') AND VENTA.Estatus='CONCLUIDO'
ORDER BY VENTA.ID
El mensaje de error que marca es:
Mens. 102, Nivel 15, Estado 1, Línea 17
Sintaxis incorrecta cerca de '='.
Valora esta pregunta
0