Array
(
)

Compara resultado de um campo dinâmico

Itamar Souza
   - 25 jun 2014

Bom dia a todos
Tenho uma consulta sql que faz um cálculo de entre datas é me retorna uma diferença, gostaria de compara este campo com um outro campo que me mostra a quantidade de dias definido, alguém sabe se isso é possível e como fazer?
Agradeço
Consulta:
#Código
select a.nome,
b.nome as NomeEmpresa,
a.dataatestado,
a.email,
a.datavalidadeatestado,
b.qtddiasatestado,
DATEDIFF (DAY, a.datavalidadeatestado, GETDATE() ) AS DIFERENCADIA
from TB_USUARIO a
inner join TB_EMPRESA b on a.controleempresa = b.controleempresa
where b.controleempresa = 6
and a.status = 'N'


Gostaria de compara este campo:
and DIFERENCADIA = b.qtddiasatestado

Faabiianooc
   - 25 jun 2014

#Códigoselect a.nome,
b.nome as NomeEmpresa,
a.dataatestado,
a.email,
a.datavalidadeatestado,
b.qtddiasatestado,
DATEDIFF (DAY, a.datavalidadeatestado, GETDATE() ) AS DIFERENCADIA
from TB_USUARIO a
inner join TB_EMPRESA b on a.controleempresa = b.controleempresa
where b.controleempresa = 6
and a.status = 'N' and DATEDIFF (DAY, a.datavalidadeatestado, GETDATE() ) = b.qtddiasatestado



OU
#Código
with cte as (
select a.nome,
b.nome as NomeEmpresa,
a.dataatestado,
a.email,
a.datavalidadeatestado,
b.qtddiasatestado,
DATEDIFF (DAY, a.datavalidadeatestado, GETDATE() ) AS DIFERENCADIA
from TB_USUARIO a
inner join TB_EMPRESA b on a.controleempresa = b.controleempresa
where b.controleempresa = 6
and a.status = 'N'
)
select * from cte
where DIFERENCADIA = qtddiasatestado