• Just another option to consider, think of it as food for thought:

    with TestData as (

    select

    PassM,

    cast(EnterDt as datetime) EnterDt,

    ConsecutiveD

    from

    (values

    ('Boo K K','5/1/2012 11:55:00 PM', 1),

    ('Boo K K','5/2/2012 11:30:00 PM', 2),

    ('Boo K K','5/4/2012 10:30:00 AM', 1),

    ('LIAW S','4/30/2012 11:48:52 PM', 1),

    ('LIAW S','5/1/2012 00:11:07 AM', 2),

    ('LIAW S','5/1/2012 11:59:07 AM', 2),

    ('LIAW S','5/1/2012 4:42:02 AM', 2),

    ('LIAW S','5/2/2012 1:10:09 AM', 3),

    ('LIAW S','5/2/2012 1:43:06 AM', 3),

    ('LIAW S','5/4/2012 2:17:47 AM', 1)

    )dt(PassM, EnterDt, ConsecutiveD)

    )

    , UniqueDts as (

    select distinct

    PassM,

    dateadd(dd,datediff(dd,0,EnterDt),0) UniqEnterDt

    from

    TestData

    )

    , GrpDates as (

    select

    PassM,

    UniqEnterDt,

    GrpDate = dateadd(dd,row_number() over (partition by PassM order by UniqEnterDt) *-1,UniqEnterDt),

    rn = row_number() over (partition by PassM order by UniqEnterDt)

    from

    UniqueDts

    )

    ,ConsecutiveDts as (

    select

    PassM,

    UniqEnterDt,

    rn = row_number() over (partition by PassM, GrpDate order by UniqEnterDt)

    from

    GrpDates

    )

    select

    td.PassM,

    td.EnterDt,

    cd.rn as CompConsecutiveD,

    td.ConsecutiveD

    from

    TestData td

    inner join ConsecutiveDts cd

    on (td.PassM = cd.PassM and

    dateadd(dd,datediff(dd,0,td.EnterDt),0) = cd.UniqEnterDt);