MySQL之间是否包含范围界限?例如,如果我
date between '2013/12/02' AND '2013/12/01'
它们也将被包括在内吗?还有哪一个更好?我应该使用BETWEEN
还是应该依赖<=
和>=
?
答案 0 :(得分:0)
根据manual:
如果expr大于或等于min且expr小于或等于max,则BETWEEN返回1,否则返回0. 这相当于表达式(min&lt; = expr AND expr&lt;如果所有参数属于同一类型,则= max)。否则,类型转换将根据第12.2节“表达式评估中的类型转换”中所述的规则进行,但应用于所有三个参数。
答案 1 :(得分:0)
请参阅此答案:Why use the BETWEEN operator when we can do without it?
答案 2 :(得分:0)
如果你的日期值实际上是日期时间值,并且时间组件并不总是'00:00:00',那么问题中的建议都不好。你想要第二个变种。具体来说,你想要
where yourfield >= your start date
and your field < the day after your end date