自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

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

數(shù)據(jù)庫(kù) SQL Server
如果想把15位身份證號(hào)碼轉(zhuǎn)換成18位的身份證號(hào)碼,使用SQL函數(shù)可否實(shí)現(xiàn)呢?答案是肯定的。下面就為您介紹使用SQL 函數(shù)轉(zhuǎn)換15位身份證號(hào)碼到18位的方法,供您參考。

由于二代身份證15位升為18位,很多SQL數(shù)據(jù)庫(kù)中存儲(chǔ)的數(shù)據(jù)都需要改變,下面就為您介紹使用SQL 函數(shù)轉(zhuǎn)換15位身份證號(hào)碼到18位的方法,供您參考,希望對(duì)您學(xué)習(xí)SQL函數(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中的TRUNC函數(shù)

SQL中表變量是否必須替代臨時(shí)表

SQL中表變量的不足

SQL循環(huán)執(zhí)行while控制

SQL中游標(biāo)嵌套循環(huán)的示例

責(zé)任編輯:段燃 來(lái)源: 百度空間
相關(guān)推薦

2010-09-09 11:17:44

SQL函數(shù)公歷

2020-02-05 15:29:56

計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備

2018-01-04 11:28:23

2009-06-12 11:34:01

2013-09-11 19:10:59

2014-11-12 17:45:14

網(wǎng)絡(luò)身份識(shí)別

2017-05-02 15:10:56

病歷智慧城市數(shù)據(jù)

2011-04-29 09:40:59

復(fù)印二代身份證多功能一體機(jī)

2011-04-25 10:00:08

聯(lián)想7205身份證復(fù)印

2017-12-27 11:55:24

2009-07-01 19:26:17

云計(jì)算WEB虛擬化

2017-12-26 10:43:00

微信身份證網(wǎng)證微警云聯(lián)盟

2022-01-24 07:16:01

12306電子乘車證明身份證

2017-12-27 12:41:04

2021-07-04 12:44:04

PythonExcel身份證

2009-08-21 16:55:43

C#空格函數(shù)

2016-11-02 15:10:56

ADX3000應(yīng)用交付服務(wù)器迪普科技

2012-05-21 17:14:19

夏普復(fù)合一體機(jī)

2017-10-16 13:16:10

民生警務(wù)警務(wù)平臺(tái)信息化

2009-12-30 13:39:10

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)