我想编写一个以 INT 形式返回的函数,它是符合特定条件的记录数。
我试过这个,它运行......但它保持安静 - 它不返回任何东西。我猜它只是在后台运行选择。
ALTER FUNCTION [dbo].[f_InboundCallsPerUser](@p_User varchar(50), @p_sd datetime, @p_ed datetime)
RETURNS INT
WITH EXECUTE AS CALLER
AS
BEGIN
Return(SELECT COUNT(*)
FROM CallDetail
WHERE LocalUserID = @p_user
AND InitiatedDate BETWEEN @p_sd AND @p_ed
AND UPPER(CallDirection) = 'OUTBOUND'
AND LineDurationSeconds > 0);
END;
你是怎样做的?