2

我们团队中的每个人都有自己的提取日期之间数据的方法,我们提供了两种常用的提取数据的方法:

  1. [DateTimeColumn]@StartDate 和 @EndDate 之间
  2. [DateTimeColumn] > @StartDate AND[DateTimeColumn] <= @EndDate

何时使用/区别“BETWEEN”和“日期时间”上的“> AND <=”:SQL 查询优化以及两者中哪一个最适合使用。

4

2 回答 2

9

BETWEEN运算符使用区间的两端。每当您希望排除间隔的一端或两端时,请使用特定的比较操作。

此外,BETWEEN当您针对复杂表达式进行测试时也很方便:例如,编写类似

... AND CASE WHEN A>0 THEN open_date ELSE close_date END BETWEEN '01/01/2012' AND '05/01/2012'

比重复CASE表达两次更容易。

于 2012-05-29T03:20:53.390 回答
1

只是补充一下 dashblinkenlight 的观点,我实际上没有看到 Between 和 <> 运算符有任何性能问题。您可以在这两种情况下检查查询计划。唯一明显的区别是Between 是包容性的。

于 2012-05-29T03:32:59.557 回答