av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

巧用SQL函數(shù)實現(xiàn)身份證15位變18位

由于二代身份證15位升為18位,很多SQL數(shù)據(jù)庫中存儲的數(shù)據(jù)都需要改變,下面就為您介紹使用SQL 函數(shù)轉(zhuǎn)換15位身份證號碼到18位的方法,供您參考,希望對您學(xué)習(xí)SQL函數(shù)的使用能夠有所啟示。

10年積累的成都做網(wǎng)站、網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先做網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有貴港免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

create function f_CID15to18 (@sfz char(18))
returns char(18)
as
begin

    declare @osfz varchar(18)
    declare @i int,@ai int,@wi int,@sum int,@mod int,@result int
    set @osfz = @sfz
    set @sum = 0
    IF len(@osfz) = 15
    begin
        set @osfz = substring(@osfz,1,6) + '19' + substring(@osfz,7,9)
        set @i = 2
       
        while @i <= 18
        begin
            set @ai = cast(substring(@osfz,19 - @i,1) as int)
            set @wi = POWER (2, (@i - 1))% 11
            set @sum = @sum + @ai * @wi
            set @i = @I + 1
        end

        set @mod = @sum % 11
        set @result = 12 - @mod

        IF @result >= 10
            IF @result = 10
                RETURN @osfz + 'X'
            ELSE
            begin
                set @result = @result - 11
                RETURN @osfz + ltrim(@result)
            end
        ELSE
            RETURN @osfz + ltrim(@result)
    end
    ELSE
        RETURN @sfz
    return @sfz
end
go
-- select dbo.f_CID15to18('411023 850207 106')
-- /*
-- ------------------
-- 32108519760502***9
-- (所影響的行數(shù)為 1 行)
-- */
-- select dbo.f_CID15to18('321085760502***')
-- /*
-- ------------------
-- 32108519760502***9
-- (所影響的行數(shù)為 1 行)
-- */
-- drop function f_CID15to18


分享名稱:巧用SQL函數(shù)實現(xiàn)身份證15位變18位
本文來源:http://uogjgqi.cn/article/dpsooch.html
掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流