我有一个 SQL 脚本,它告诉我我的任何员工是否有任何在过去 48 小时内未更新的未结服务订单。它看起来像这样(简化) -
select ServiceOrder, RepName from NotesTable
join OrdersTable on OrdersTable.OrderNumber=NotesTable.OrderNumber
having (DATEDIFF(day,max(NotesTable.LastModified),GETDATE()) >2)
基本上只取今天的日期,减去最近注释的最后修改日期,然后吐出 48 小时内未修改的服务订单数。
我的问题是,如果服务订单没有备注,则此脚本不起作用。因此,即使它在 48 小时内没有更新,它也不会出现在报告中。我需要说什么样的“或”“如果它没有注释也告诉我”。
我考虑加入另一个包含“dateopened”字段的表,然后,
OR (DATEDIFF(day,(NotesTable.DateOpened),GETDATE()) >2)
但这会返回超过 48 小时的每个服务订单,所以这无济于事。
想法?