like

DIFERENCIA DE FECHAS


select 
(select COUNT(pat_ben_vc)
from dbo.Beneficiario 
WHERE pat_ben_vc ='QUISPE'
group by pat_ben_vc) as quispe_paternos,
(select COUNT(mat_ben_vc)
from dbo.Beneficiario 
WHERE mat_ben_vc ='QUISPE'
group by mat_ben_vc)  as quispe_maternos
SELECT 
    SUM(CASE WHEN pat_ben_vc = 'QUISPE' THEN 1 ELSE 0 END) AS CountPat,
    SUM(CASE WHEN mat_ben_vc = 'QUISPE' THEN 1 ELSE 0 END) AS CountMat
FROM dbo.Beneficiario;

1. Búsqueda de registros específicos

select nom_ben_vc, cod_com_si 
from dbo.Beneficiario 
where cod_com_si = (select max(cod_com_si)
					from dbo.Beneficiario
					)

2. Contar registros relacionados

select TOP 1 count(zon_ben_vc) as contador, zon_ben_vc
from dbo.Beneficiario 
group by zon_ben_vc
ORDER BY contador DESC

4. Agrupación por características


SELECT contador, zon_ben_vc 
FROM 
(select count(pat_ben_vc) as contador, zon_ben_vc
from dbo.Beneficiario 
where pat_ben_vc = 'GONZALES'
group by zon_ben_vc) as CONSULTA 
where contador>5

5. Filtrado por atributos relacionados

SELECT fec_nac_ben_da, nom_ben_vc
from  dbo.Beneficiario
where fec_nac_ben_da <=  (select TOP 1 fec_nac_ben_da 
from dbo.Beneficiario
WHERE pat_ben_vc = 'AYALA'
ORDER BY fec_nac_ben_da  DESC)
ORDER BY fec_nac_ben_da DESC

6. Cálculo sobre grupos

select avg(DATEDIFF(YEAR, fec_nac_ben_da, getdate())) as promedio_edad
from dbo.Beneficiario
where zon_ben_vc like '%caja%'

8. Validación de dependencias