8

我有以下查询:

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。

请建议。

提前致谢。

4

2 回答 2

7

根据我对 DB2/z 的了解(LUW 产品可能不同,但我对此表示怀疑),这两者都应该为您提供完全相同的执行配置文件。

如果您真的很担心,您应该对这两个查询运行EXPLAIN以查看是否有任何差异。

于 2012-11-27T04:47:58.917 回答
5

之间只是 >= 和 <= 的简写,

如果想找到更多帮助,请访问此处的链接:SQL Server 中的“BETWEEN”函数是否非常昂贵?

于 2012-11-27T04:55:08.937 回答