我正在调查以下 sql 语句的性能问题:
Update tableA
set columnA1 = columnB1
from tableB
where tableA.columnA2 = tableB.columnB2
问题是tableA.columnA2
is of typenvarchar(50)
而tableB.columnB2
is of type bigint
。我的问题是 sql server 如何执行这样的查询;使用比较运算符执行它并进行比较,还是转换为cast bigint
比较运算符并进行比较。nvarchar
nvarchar
nvarchar
bigint
bigint
另一件事:如果我不得不让这些列类型保持原样tableA.columnA2
,tableB.columnB2
'我该如何重写这个查询来提高性能?
注意:这个查询只处理大约 100,000 条记录,但它需要永远。
在此先感谢,非常感谢您的帮助。