我有一个存储过程,它运行一个带有巨大 where 子句的查询。WHERE 子句本身非常简单。看起来像
SELECT a, b, c FROM table
WHERE (cond1) OR (cond2) OR (cond3) OR (cond4)
其中 cond1、cond2、cond3 和 cond4 都代表我们用户的一些要求。
我的问题是关于查询性能的:执行 4 个单独的查询(每个都有条件 cond{1..4} 之一),将结果插入临时表,然后最终从该临时表中选择所有内容是否有意义?
我想知道的是,dbms 是否针对这种情况进行了优化。
FWIW,我正在使用 Syabse ASE - TDS 5.5。
谢谢哈沙斯
PS:请不要让我“做我自己的基准测试”。我当然会最终这样做。我真正在寻找指向此类优化内部的链接(如果有的话)。泰:)