0
我有,它返回基於參數的一組行,它看起來像這樣例子的表函數:T-SQL調用表函數傳遞多個值和聚合結果
CREATE FUNCTION fn_get_records
(@PARENTID INT)
RETURNS @returnTable TABLE
(
-- columns returned by the function
Id INT NOT NULL,
Parent_Id INT NOT NULL,
Name VARCHAR(255) NOT NULL
)
AS
BEGIN
-- This select returns data
INSERT INTO @returnTable (Id, ParentId, Name)
SELECT Id, ParentId, Name FROM [whatever] where Parent_Id = @PARENTID
RETURN
END
我有一個包含另一個表這些「Parent Id」的列表,我應該爲每個Parent_Id調用匹配特定查詢的前一個函數並聚合所有結果。
父ID是使用類似
SELECT Parent_Id
FROM Parent_Records
WHERE Country = 'USA'
此選擇的回報,例如,4行檢索。對於每一行,我必須執行我的功能fn_get_records
並將所有結果彙總在一個視圖或另一個函數中。
這有可能嗎? 當然,我不希望因爲我需要的東西快速使用遊標
我想我從來沒有使用CROSS APPLY語句,直到今天。 :-D – Raffaeu
@Raffaeu這是一個很棒的功能。把它看作記錄級處理的子程序。 Google CROSS APPLY和OUTER APPLY。總是樂於學習新的東西。 –