Tôi tự hỏi liệu bạn có thấy sự cải thiện hay không bằng cách tách các trường hợp ra một cách rõ ràng:
...
AND ((t1.vchCol1 = t2.vchCol1) OR (t1.vchCol1 IS NULL AND t2.vchCol1 IS NULL))
AND ((t1.vchCol2 = t2.vchCol2) OR (t1.vchCol2 IS NULL AND t2.vchCol2 IS NULL))
...