gpt4 book ai didi

SQL proc计算7位和12位upc的校验位

转载 作者:行者123 更新时间:2023-12-02 08:36:16 24 4
gpt4 key购买 nike

我不得不再次在互联网上搜索这段代码,所以我想我会把它放在这里,这样下次我可以更快地找到它,希望你也能更快地找到它:)

最佳答案

检查这个。下面的代码可以校验所有GTIN的数字(EAN8,EAN13,EAN14,UPC/A,UPC/E)

CREATE FUNCTION [dbo].[check_digit]
(
@GTIN VARCHAR(14)
)
RETURNS TINYINT
AS
BEGIN
DECLARE @Index TINYINT,
@Multiplier TINYINT,
@Sum TINYINT,
@checksum TINYINT,
@result TINYINT,
@GTIN_strip VARCHAR(13)

SELECT @GTIN_strip = SUBSTRING(@GTIN,1,LEN(@GTIN)-1);

SELECT @Index = LEN(@GTIN_strip),
@Multiplier = 3,
@Sum = 0

WHILE @Index > 0
SELECT @Sum = @Sum + @Multiplier * CAST(SUBSTRING(@GTIN_strip, @Index, 1) AS TINYINT),
@Multiplier = 4 - @Multiplier,
@Index = @Index - 1

SELECT @checksum = CASE @Sum % 10
WHEN 0 THEN '0'
ELSE CAST(10 - @Sum % 10 AS CHAR(1))
END


IF (SUBSTRING(@GTIN,LEN(@GTIN),1) = @checksum)
RETURN 1; /*true*/
RETURN 0; /*false*/
END

关于SQL proc计算7位和12位upc的校验位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21126543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com