私に欠けているものを教えてくれる人が必要です。
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 を返します - OK
select [dbo].[SKU](1005,1)
100 を返します - OK
この時点ですべて問題ないように見えますが、私のテーブルにはほぼ 100 万行あります... SKU の結果は同じテーブル (更新部分) に送られます。
しかし、私はそれを2時間実行しましたが、まだ実行中です...
私の質問: 時間のかかるクエリなどは見たことがありません。大丈夫です?何か足りない?
ありがとう!そして明けましておめでとうございます!D: