以下提到的查询(外部和内部查询)除了一个子句T2.COL2 =(临时/永久)之外是相似的。为了适应这个子句,select被执行两次,导致性能下降。我们可以将内部查询与外部查询合并,避免使用存在,并避免调用select两次。如何避免仅在一个条件下两次调用select查询差异
以下查询仅返回一个记录,其中T1.COL2 ='Temporary'。修改的查询也应该只返回一个结果。
SELECT * FROM TABLE1 T1 WHERE T1.COL1='Rajesh' AND T1.COL2='Temporary' AND EXISTS ( SELECT 'Y' FROM TABLE1 T2 WHERE T2.COL1='Rajesh' AND T2.COL2='Permanant')
在此先感谢您的建议。
编辑你的问题,并提供样本数据,预期的效果,并解释你正在尝试做的。 –