怎么说时间少于某小时/分钟

时间:2011-10-24 18:11:20

标签: sql sql-server sql-server-2005

我的查询中有以下where子句:

(DATEPART(hh,[AuditInsertTimestamp]) >= 17
        OR DATEPART(hh,[AuditInsertTimestamp]) <= 6)

因此,审计插入时间戳大于或等于5PM,审计插入时间戳小于或等于6AM。我真正想要的是审计插入时间戳小于或等于5:30 AM。我在想添加:

--AND DATEPART(mi,[AuditInsertTimestamp]) < 30)

但那只会给我30分钟以下的时间正确吗?什么是获得&lt; = 5:30 AM的最佳方式?

1 个答案:

答案 0 :(得分:3)

(
 DATEPART(hh,[AuditInsertTimestamp]) >= 17
 OR DATEPART(hh,[AuditInsertTimestamp]) < 5
 OR (DATEPART(hh,[AuditInsertTimestamp]) = 5
     AND
     DATEPART(minute,[AuditInsertTimestamp]) <= 30)
)