请问sqlserver中自定义函数如何返回聚合计算的值

b2436234 2024-10-28 19:48:47

这是我的函数,输入两个变量,@InputDate是当前的日期,@account_no是账户号,输出5个工作日的总交易量, [dbo].[Getworkday](@InputDate,5)这个函数可以返回5个工作日前的日期,我发现这个函数永远返回的是null,正常查这个账户和时间段是有数据的,求大神解答

CREATE function Getworkday_txnsum(@InputDate DATE,@account_no nvarchar)
returns float
BEGIN
    DECLARE @ResultDate DATE = @InputDate
    DECLARE @dailysum float
    Declare @acc_id nvarchar= @account_no
    DECLARE @lookbackdate date
    
    set @lookbackdate = [dbo].[Getworkday](@InputDate,5)
    select @dailysum = sum(TRANSACTION_AMOUNT_IN_HKD)
    from [dbo].[ALH105PT_updated]
    where Risk_Type = 'HPH'
    and TRANSACTION_AMOUNT_IN_HKD >= 2400
    and transaction_cdi_code = 'D'
    and TRANSACTION_ACCOUNT_NO = @acc_id
    and transaction_date between @lookbackdate and @ResultDate
    group by TRANSACTION_ACCOUNT_NO

    return @dailysum
end

...全文
成就一亿技术人!
拼手气红包 30.00元
806 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
河狸吗 2024-10-28
  • 打赏
  • 举报
回复
b2436234 2024-10-28
  • 举报
回复
@河狸吗 啊。。这个不设置是会默认截断是吗?
河狸吗 2024-10-28
  • 举报
回复 1
@b2436234 这样赋值默认长度是1
b2436234 2024-10-28
  • 举报
回复
@河狸吗 感谢大佬,解决了!

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧