• I'm also not sure about your problem, but maybe your solution is just this:

    DECLARE @person TABLE (id INT, name VARCHAR(100), dob datetime)

    INSERT INTO @person

    SELECT 1, 'p1', '2009-03-27 00:00:00.000'

    UNION SELECT 2, 'p2', '2009-03-28 00:00:00.000'

    UNION SELECT 3, 'p3', '2009-03-28 00:00:00.000'

    UNION SELECT 4, 'p4', '2009-03-29 00:00:00.000'

    UNION SELECT 5, 'p5', '2009-03-29 00:00:00.000'

    UNION SELECT 6, 'p6', '2009-03-30 00:00:00.000'

    UNION SELECT 7, 'p7', '2009-03-30 00:00:00.000'

    UNION SELECT 8, 'p8', '2009-03-31 00:00:00.000'

    UNION SELECT 9, 'p9', '2009-04-07 00:00:00.000'

    UNION SELECT 10, 'p10', '2009-04-25 00:00:00.000'

    SELECT *, DATEDIFF(DAY, DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0), dob)

    FROM @person

    WHERE DATEDIFF(DAY, DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0), dob) < 15

    Greets

    Flo