AgeCalendar 日期时间字段问题

AgeCalendar Datetime Field Issue

对于我的 AgingCalendar 字段,我有 3 个使用 CASE WHEN 的条件:

    CASE WHEN A.[END_DTTM] > A.[STRT_DTTM] THEN C2.[DY_OF_CAL_NUM] - C1.[DY_OF_CAL_NUM] 
         WHEN A.[END_DTTM] IS NULL and A.[STRT_DTTM] IS NOT NULL THEN C3.[DY_OF_CAL_NUM] - C1.[DY_OF_CAL_NUM]
         WHEN A.[END_DTTM] = A.[STRT_DTTM] THEN 1
    END AS AgeCalendar

对于我的第三个条件,我基本上想说当结束日期时间 = 开始日期时间时,日历天数应该设置为 1 个日历日。

然而,在我引入的一些记录中,开始日期等于结束日期,但与每个日期时间关联的时间不同。发生这种情况时,这些记录在 AgeCalendar 字段中收到 NULL。(例如,我可以有 6/6/2014 0:00:00 = 6/6/2014 0:00:00,这将给我 1。 ..但是如果我有 6/6/2014 0:00:00 = 6/6/2014 0:03:59 (或类似的东西)...它会给我一个 NULL 值,因为它不匹配。 我怎样才能更新上面的代码,以便我基本上说什么时候结束日期 = 开始日期,然后 1...不管没有匹配的时间?

CASTCONVERT将它们作为日期忽略时间。

WHEN CONVERT(DATE, A.[END_DTTM]) = CONVERT(DATE, A.[STRT_DTTM]) THEN 1

WHEN CAST(A.[END_DTTM] AS DATE) = CAST(A.[STRT_DTTM] AS DATE) THEN 1