我需要有人能告诉我我错过了什么。
我在 SQL Server 2008 中有这个标量函数:
ALTER function [dbo].[SKU](@id1 int, @id2 int)
returns int
begin
return (
SELECT SUM(Value)
FROM Table
where id_1 = @id1
and id_2 = @id2)
end
表格是这样的:
id_1 id_2 Value
1004 1 10
1004 1 30
1004 2 100
1005 1 90
1005 1 5
1005 1 5
如果我执行:
select [dbo].[SKU](1004,1)
它返回 40 - 没关系
select [dbo].[SKU](1004,2)
返回 100 - 确定
select [dbo].[SKU](1005,1)
返回 100 - 确定
在这一点上一切似乎都很好,但我的表几乎有一百万行...... SKU 的结果进入同一张表(更新部分)。
但是我现在运行了两个小时,并且仍在运行...
我的问题:我从未见过如此耗时的查询。没关系?我错过了什么?
谢谢!,新年快乐!丁: