IF EXISTS ( SELECT * 
            FROM   sysobjects 
            WHERE  id = object_id(N'dbo.CF_Edad_Persona_A_UnaFecha') 
                   and type = 'FN')
BEGIN
    DROP FUNCTION dbo.CF_Edad_Persona_A_UnaFecha
END
GO

CREATE  FUNCTION [dbo].[CF_Edad_Persona_A_UnaFecha](@pFecha_Nac DATETIME, @pFechaAComparar DATETIME)
RETURNS SMALLINT
AS

BEGIN
DECLARE @Edad    SMALLINT

SET @Edad = (CONVERT( INT,CONVERT(VARCHAR(8),@pFechaAComparar,112)) - CONVERT(INT,CONVERT(VARCHAR(8),@pFecha_Nac,112) ) ) / 10000

RETURN ISNULL(@Edad, 0)
END