有谁知道BETWEEN
条款的范围比较?如果我有一个datetime
数据类型,BETWEEN
子句是否比较到小时/分钟/秒级别?
答案 0 :(得分:5)
是的,如果它相同(下降到millasecond)那么它是有效的并且将断言为true。所以将会显示
答案 1 :(得分:4)
此:
WHERE datetime_column BETWEEN '2010-08-11' AND '2010-08-12'
相当于
WHERE (datetime_column >= '2010-08-11 00:00:00.000' AND datetime_column <= '2010-08-12 00:00:00.000')
这里有两点需要注意:
'2010-08-11'
这样的文字并不意味着你要整整一天检查。答案 2 :(得分:2)
这取决于数据类型。如果BETWEEN
的值大于或等于TRUE
的值且小于或等于{{1}的值,则test_expression
会返回begin_expression
}(Source)。
以下内容:
end_expression
相当于:
BETWEEN date_field '2010-01-01 12:00:00' AND '2010-02-01 12:00:00'
答案 3 :(得分:1)
说val BETWEEN @lowVal AND @highVal
与说@lowVal <= val AND val <= @highVal
完全相同,所以是的...日期时间比较包括日期的所有部分。 See here.