Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/04/2018, 08:51
tattojk
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Pregunta variables en subconsultas

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 original
  1. DECLARE @Sdt_FecPag SMALLDATETIME
  2. DECLARE @P_NumCre INT
  3. SET @Sdt_FecPag = '01/01/1900'
  4. SET @P_NumCre = 130058
  5. DECLARE @crefechgeneinte smalldatetime
  6.  
  7. SELECT
  8.     c.crenumero
  9.     , [B]c.crefechgeneinte[/B]
  10.     , isnull(pp3.Ti_UltCuoVen, 0) AS [B]Ti_UltCuoVen[/B]
  11.     , CASE isnull(pp3.Ti_UltCuoVen, 0) WHEN 0 THEN c.crefechgeneinte ELSE pp3.Sdt_FecUltCuoVen END AS Sdt_FecUltCuoVen
  12.     , dia.D_IntCorCS
  13. FROM
  14.     dbo.vistintecorr AS c  
  15.     LEFT OUTER JOIN (
  16.         SELECT
  17.             ppcuota AS Ti_UltCuoVen
  18.             , ppfecha AS Sdt_FecUltCuoVen
  19.             , crenumero
  20.             FROM
  21.                 dbo.planpago
  22.             WHERE
  23.                 ppfecha <= @Sdt_FecPag
  24.                 AND ppcuota = (
  25.                                 SELECT MAX(ppcuota) FROM planpago AS ppn
  26.                                 WHERE ppn.crenumero = dbo.planpago.crenumero
  27.                                 AND ppfecha <= @Sdt_FecPag
  28.                                 )
  29.     ) AS pp3 ON pp3.crenumero = c.crenumero
  30.     LEFT OUTER JOIN (
  31.         SELECT SUM(diavalointe - diaabonsubs) AS D_IntCorCS, crenumero
  32.         FROM dbo.diario
  33.         WHERE diaestado = 'CS'
  34.             AND diafecha < (SELECT [B]CASE isnull(Ti_UltCuoVen, 0) WHEN 0 THEN c.crefechgeneinte ELSE pp.ppfecha END AS ppfecha[/B]
  35.                             FROM planpago AS pp
  36.                             WHERE pp.crenumero=dbo.diario.crenumero AND
  37.                             pp.ppfecha <= @Sdt_FecPag
  38.                             AND pp.ppcuota = (
  39.                             SELECT MAX(pp2.ppcuota) FROM planpago AS pp2
  40.                             WHERE pp2.crenumero = dbo.diario.crenumero
  41.                             AND pp2.ppfecha <= @Sdt_FecPag
  42.                             ))
  43.         GROUP BY crenumero
  44.     ) AS dia ON dia.crenumero = c.crenumero
  45. WHERE c.crenumero = @P_NumCre
  46. ORDER BY c.crenumero

[/QUOTE]

Agradezco la ayuda y sugerencias que me puedan brindar

Última edición por gnzsoloyo; 12/04/2018 a las 05:02 Razón: Usar HIGHLIGHT por favor. Para eso están.