我有一个连接两个未编制索引的表的查询,性能很差.因为我连接的是来自不同来源的电话号码,所以我在连接条件上使用Right(),并通过每个表上的子查询进行一些字符串操作. 在这种情况下,索引是否有助于提高性能?下面的示例
WITH ds_One AS (
SELECT REPLACE(PhoneNumber,'+44', '0') AS PhoneNumber
FROM PhoneNumbers
)
,ds_Two AS (
SELECT REPLACE(PhoneNumber,'+44', '0') AS PhoneNumber
,CustomerName
FROM PhoneNumbers2
)
SELECT two.CustomerName
FROM ds_Two two
INNER JOIN ds_One one
ON RIGHT(one.PhoneNumber,10) = RIGHT(two.PhoneNumber,10)