【发布时间】:2012-11-14 16:12:00
【问题描述】:
我有以下疑问:
SELECT ID, ADDRESS
FROM EMPLOYEE A
WHERE ID=12345
AND CURRENT DATE BETWEEN A.EFF_DT AND A.EXP_DT
SELECT ID, ADDRESS
FROM EMPLOYEE A
WHERE ID=12345
AND CURRENT DATE >= A.EFF_DT AND CURRENT DATE <= A.EXP_DT
在这两个查询中,哪个查询产生更好的性能。
这里我使用运算符 >= 和
请提出建议。
提前致谢。
【问题讨论】:
-
请尽可能避免使用
BETWEEN,实际上通常最好为范围设置独占上限 ('<'),尤其是日期/时间/时间戳类型(你真的不想构造微秒,是吗?)。