微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将列值一一传递给 SQL 函数?

如何解决如何将列值一一传递给 SQL 函数?

这是我的表“LoadData”

Sequence_Code ID Current_Year Record_Date 状态
17AA 310001 2017 2017-01-01 S
18AB 310002 2018 2018-02-22 A
19AC 310003 2019 2019-02-10 S
NULL 310004 2019 2019-02-20 A
NULL 310005 2020 2019-03-20 A
NULL 310006 2020 2019-04-20 A

我们如何将仅那些记录 where Sequence_Code is NULL 且状态为 A 的“ID”一一传递给函数

我的功能

CREATE FUNCTION [dbo].[GetNextSequenceCode_TEST] 
    (@LastSeqAlphabet varchar(50))
RETURNS varchar(100)
AS
BEGIN 
    -- will generate and update a sequence code in the same table
END 

如果需要,请更新 fFunction 的输入参数。

解决方法

也许我过于简单化了,因为我不完全理解您的要求,但可以这样简单:

UPDATE LoadData
SET
    Sequence_Code = dbo.GetNextSequenceCode_TEST ( ID )
FROM LoadData AS ld
WHERE
    ld.Sequence_Code IS NULL
    AND ld.[Status] = 'A';

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。