Cordial saludo.
Estoy trabajando con Sql Server, como hago para traer los resultados de una consulta a una subconsulta para realizar comparaciones. ej:
Necesito capturar el valor de los campos crefechgeneinte , Ti_UltCuoVen para utilizarlo en la ultima subconsulta, resalto en negrita los campos que necesito validar
Código SQL:
Ver originalDECLARE @Sdt_FecPag SMALLDATETIME
DECLARE @P_NumCre INT
SET @Sdt_FecPag = '01/01/1900'
SET @P_NumCre = 130058
DECLARE @crefechgeneinte smalldatetime
SELECT
c.crenumero
, [B]c.crefechgeneinte[/B]
, isnull(pp3.Ti_UltCuoVen, 0) AS [B]Ti_UltCuoVen[/B]
, CASE isnull(pp3.Ti_UltCuoVen, 0) WHEN 0 THEN c.crefechgeneinte ELSE pp3.Sdt_FecUltCuoVen END AS Sdt_FecUltCuoVen
, dia.D_IntCorCS
FROM
dbo.vistintecorr AS c
LEFT OUTER JOIN (
SELECT
ppcuota AS Ti_UltCuoVen
, ppfecha AS Sdt_FecUltCuoVen
, crenumero
FROM
dbo.planpago
WHERE
ppfecha <= @Sdt_FecPag
AND ppcuota = (
SELECT MAX(ppcuota) FROM planpago AS ppn
WHERE ppn.crenumero = dbo.planpago.crenumero
AND ppfecha <= @Sdt_FecPag
)
) AS pp3 ON pp3.crenumero = c.crenumero
LEFT OUTER JOIN (
SELECT SUM(diavalointe - diaabonsubs) AS D_IntCorCS, crenumero
FROM dbo.diario
WHERE diaestado = 'CS'
AND diafecha < (SELECT [B]CASE isnull(Ti_UltCuoVen, 0) WHEN 0 THEN c.crefechgeneinte ELSE pp.ppfecha END AS ppfecha[/B]
FROM planpago AS pp
WHERE pp.crenumero=dbo.diario.crenumero AND
pp.ppfecha <= @Sdt_FecPag
AND pp.ppcuota = (
SELECT MAX(pp2.ppcuota) FROM planpago AS pp2
WHERE pp2.crenumero = dbo.diario.crenumero
AND pp2.ppfecha <= @Sdt_FecPag
))
GROUP BY crenumero
) AS dia ON dia.crenumero = c.crenumero
WHERE c.crenumero = @P_NumCre
ORDER BY c.crenumero
[/QUOTE]
Agradezco la ayuda y sugerencias que me puedan brindar