我有一个表格,其中包含一些数值列、公式和结果列。
问题在于这需要很长时间。表中的行数将达到500万至1000万。
有没有办法加快速度?或者有其他解决方法吗?
非常感谢!
|rownum|value1|value2|value3|formula |result|
|------|------|------|------|--------------------|------|
|1 |11 |30 |8 |value1/value2*value3| |
|2 |43 |0 |93 |value1-value2+value3| |
我希望将 result
列填充为公式的结果。
目前,我正在使用以下查询完成此操作:
DECLARE @v_sql NVARCHAR(MAX)
SET @v_Sql = CAST ((SELECT
' UPDATE [table] ' +
' SET [result] = ' + table.[formula] +
' WHERE [rownum] = ' + CAST(table.[rownum] as nvarchar(255)) +
';'
FROM [table]
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)') AS NVARCHAR (MAX))
EXEC (@v_Sql)
问题在于这需要很长时间。表中的行数将达到500万至1000万。
有没有办法加快速度?或者有其他解决方法吗?
非常感谢!