在我的SQL函数中找不到错误

时间:2015-06-30 22:50:29

标签: sql sql-function

我有一个简单的功能。它尚未完成,但在进行中间检查时,我收到错误Invalid column name 'chksum1'

ALTER FUNCTION [dbo].[fnMidCheckSum]
(
    @MID varchar(16)
)
RETURNS int
AS
BEGIN

    DECLARE 
        @checkdiget int,
        @tp int,
        @chksum int,
        @chksum1 int

    set @checkdiget = 0

    select @tp = CAST(LEFT(@MID,1) AS INT) 

    if ((@tp * 2)  > 9)
    begin
        set @chksum1 = @tp * 2
        set @chksum = @chksum1 / 10
        set @chksum = @chksum + (chksum1 % 10)
    end


    RETURN @checkdiget

无法弄清楚出了什么问题。或者可能是我的眼睛在漫长的一天中疲惫不堪

1 个答案:

答案 0 :(得分:0)

您错过了此声明右侧的 ID QUEUE Calls Interaction Start Weeks weekdif a123.1 a123 MSEP 1 2015-01-02 2015-03-01 -9 weeks 0.0000000 a123.2 a123 MSEK 4 2015-01-02 2015-03-01 -9 weeks 0.0000000 a123.3 a123 MSEE 25 2015-01-06 2015-03-01 -8 weeks 0.5714286 a123.4 a123 MSED 14 2015-01-12 2015-03-01 -7 weeks 0.8571429 a123.5 a123 MNEM 6 2015-01-12 2015-03-01 -7 weeks 0.8571429 b123.6 b123 MMEF 25 2015-01-02 2015-03-01 -9 weeks 0.0000000 b123.7 b123 MMEM 5 2015-01-06 2015-03-01 -8 weeks 0.5714286 b123.8 b123 MHEK 1 2015-01-06 2015-03-01 -8 weeks 0.5714286 b123.9 b123 MMED 1 2015-01-06 2015-03-01 -8 weeks 0.5714286 b123.10 b123 MMEM 3 2015-01-06 2015-03-01 -8 weeks 0.5714286 符号:

@

应该是

set @chksum = @chksum + (chksum1 % 10)