繁体   English   中英

在UPDATE T-SQL中执行存储过程

[英]Execute stored procedure in UPDATE T-SQL

我有下一个T-SQL代码

UPDATE
    #f_contr_temp
SET
    sum_percent = (EXEC get_f_contr_credit_delay_pz fct.f_contr, @date_loop, @sum_percent OUTPUT)
FROM
    #f_contr_temp AS fct,
    f_garanty AS fg
WHERE
    fct.f_contr = fg.f_contr

我试图更新sum_percent列,但抛出一个异常,我无法在更新中执行过程。 我不知道如何更新我的专栏。 请帮忙。

使用临时表存储SP的结果,如下所示:

CREATE TABLE #temp (percentage decimal(18,9))

INSERT INTO #temp
(EXEC get_f_contr_credit_delay_pz fct.f_contr, @date_loop, @sum_percent OUTPUT)

UPDATE
    #f_contr_temp
SET
    sum_percent = (select top 1 percentage from #temp)
FROM
    #f_contr_temp AS fct,
    f_garanty AS fg
WHERE
    fct.f_contr = fg.f_contr

我想您的SP返回值,所以我使用TOP 1命令仅获取第一个。

注意 fct.f_contr ,它的来源是什么? 这样查询是不正确的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM