Hola grupo una pequeña pregunta tengo esta consulta que hasta ahora
esta bien (bueno para mi) :-), como ven las dos ultimas columnas son
subconsultas.
Bueno quiero sacar una columna mas en la que tengo que hacer comparaciones
con esas 2 , el punto es que no quiero estar haciendo
la subconsulta para cada comparacion que tenga que hacer, no hay una
forma de guardar los datos que ya me devolvio en las columnas que saque
y trabajar con esos valores...
Muchas Gracias por su ayuda
DECLARE @IGV DECIMAL(10,2), @Mes INT, @Año INT
SET @IGV=(19.00 + 100)/100
SET @Mes = 1
SET @Año = 2005
SELECT DFVenta.[Rec Nº], FOS.Cliente, FOS.Estado,
RIGHT('000' + CONVERT(NVARCHAR(3),F.SerieCotizacion),3) +
RIGHT('0000000' + CONVERT(NVARCHAR(7),F.NumeroCotizacion),7)
AS [Nº Cotizacion],
DFVenta.CT, ROUND(DFVenta.CT/ @IGV,2) AS [Pago sin IGV],
(SELECT TOP 1ROUND(DFV2.CT/@IGV,2)
FROM DFVenta DFV2 WHERE DFV2.Fecha < DFVenta.Fecha AND
DFV2.SerieCotizacionßVenta.SerieCotizacion AND
DFV2.NumeroCotizacionßVenta.NumeroCotizacion)
AS [PAGO ANT LUCES],ROUND(DFVenta.CT/ @IGV,2) +
(SELECT TOP 1ROUND(DFV2.CT/@IGV,2)
FROM DFVenta DFV2 WHERE DFV2.Fecha < DFVenta.Fecha AND
DFV2.SerieCotizacionßVenta.SerieCotizacion AND
DFV2.NumeroCotizacionßVenta.NumeroCotizacion) AS [Total Luces
Pagadas],
FROM Factura F INNER JOIN FichaObra_SubTotal FOS ON
F.SerieCotizacion = FOS.SerieFichaObra AND
F.NumeroCotizacion = FOS.NumeroFichaObra INNER JOIN
DFVenta ON F.SerieCotizacion = DFVenta.SerieCotizacion AND
F.NumeroCotizacion = DFVenta.NumeroCotizacion
WHERE MONTH(DFVenta.Fecha)=@Mes AND YEAR(DFVenta.Fecha)=@Año
AND LEFT(FOS.Cliente,2)='TN'
GROUP BY DFVenta.[Rec Nº], FOS.Cliente, FOS.Estado,
RIGHT('000' + CONVERT(NVARCHAR(3),F.SerieCotizacion),3) +
RIGHT('0000000' + CONVERT(NVARCHAR(7),F.NumeroCotizacion),7) ,
DFVenta.CT, ROUND(DFVenta.CT/
@IGV,2),DFVenta.Fecha,DFVenta.SerieCotizacion,
DFVenta.NumeroCotizacion
ORDER BY DFVenta.NumeroCotizacion
Leer las respuestas