久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

增加 T-sql 中的字符值

Incrementing Character value in T-sql(增加 T-sql 中的字符值)
本文介紹了增加 T-sql 中的字符值的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我在一列中有 2 組值,即前 4 個字符是字符,接下來的 4 個字符是數(shù)字.例如:AAAA1234現(xiàn)在我必須從右端增加值,即當數(shù)值達到 9999 時,我必須將字符增加 1 個字符.

I have 2 set of values in a column i.e first 4 character are characters and next 4 character are numeric. Ex:AAAA1234 Now I have to increment the value from right end i.e when numeric value reached 9999 then I have to increment character by 1 character.

示例:考慮存儲在列中的最后一個值是 AAAA9999,然后下一個遞增的值應該是序列 AAAB9999,..... AABZ9999,... BZZZ9999..... ZZZZ9999(last value).當它達到 ZZZZ9999 時,我必須將值重置為 AAAA0001.

Sample : Consider the last value stored in a column is AAAA9999 then next incremented values should be in a sequence AAAB9999,....... AABZ9999,..... BZZZ9999..... ZZZZ9999(last value). And when it reaches ZZZZ9999 then I have to reset the value to AAAA0001.

如何在 T-SQL 中做到這一點???

How can do it in T-SQL ???

推薦答案

這是一個概念性腳本,它可以滿足您的需求.您需要對其進行調(diào)整以滿足您的要求

Here is a conceptual script, which does what you want. You will need to tweak it to suit your requirements

DECLARE @test table(TestValue char(8))
DECLARE @CharPart char(4),@NumPart int
SET @CharPart = 'AAAA'
SET @NumPart = 1
WHILE @NumPart <=9999
BEGIN
INSERT INTO @test
SELECT @CharPart+RIGHT(('0000'+CAST(@NumPart AS varchar(4))),4)
IF @NumPart = 9999
    BEGIN
    IF SUBSTRING(@CharPart,4,1)<>'Z'
        BEGIN
        SET @CharPart = LEFT(@CharPart,3)+CHAR(ASCII(SUBSTRING(@CharPart,4,1))+1)
        SET @NumPart = 1
        END
    ELSE IF SUBSTRING(@CharPart,4,1)='Z' AND SUBSTRING(@CharPart,3,1) <>'Z'
        BEGIN
        SET @CharPart = LEFT(@CharPart,2)+CHAR(ASCII(SUBSTRING(@CharPart,3,1))+1)+RIGHT(@CharPart,1)
        SET @NumPart = 1
        END 
    ELSE IF SUBSTRING(@CharPart,3,1)='Z' AND SUBSTRING(@CharPart,2,1) <>'Z'
        BEGIN
        SET @CharPart = LEFT(@CharPart,1)+CHAR(ASCII(SUBSTRING(@CharPart,2,1))+1)+RIGHT(@CharPart,2)
        SET @NumPart = 1
        END 
    ELSE IF SUBSTRING(@CharPart,1,1)<>'Z' 
        BEGIN
        SET @CharPart = CHAR(ASCII(SUBSTRING(@CharPart,1,1))+1)+RIGHT(@CharPart,3)
        SET @NumPart = 1
        END
    ELSE IF SUBSTRING(@CharPart,1,1)='Z' 
        BEGIN
        SET @CharPart = 'AAAA'
        SET @NumPart = 1
        INSERT INTO @test
        SELECT @CharPart+RIGHT(('0000'+CAST(@NumPart AS varchar(4))),4)
        BREAK
        END 
    END
ELSE
    BEGIN
    SET @NumPart=@NumPart+1
    END
END

SELECT * FROM @test

這篇關于增加 T-sql 中的字符值的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!

相關文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個子標記轉(zhuǎn)換為具有多個分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計算值創(chuàng)建計算值)
How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?) - IT屋-程序員軟件開發(fā)技
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉(zhuǎn)換為日期/月份編號(問題和答案的組合))
主站蜘蛛池模板: 一区二区三区在线 | 九九视频在线观看 | 天天操夜夜操 | av网站免费观看 | 毛片在线免费 | 国产精品久久久久久一区二区三区 | 欧美在线观看一区 | 日韩有码一区 | 手机在线一区二区三区 | 国产成人亚洲精品 | 第一福利社区1024 | 91porn国产成人福利 | 国产精品久久久久久吹潮日韩动画 | 中文久久| 日韩精品在线免费 | 欧美福利| 亚洲精品无 | 中文字幕国产一区 | h视频免费看 | 日日夜夜精品视频 | 精品二区视频 | 波多野结衣av中文字幕 | 欧美a在线观看 | 午夜精品久久久久久久久久久久久 | 91观看| a久久| 亚洲综合色婷婷 | 国产精品1 | 99热播放| 欧美亚洲视频 | 黄网站免费在线 | 中文字幕一区二区三区在线乱码 | 久久精品亚洲精品国产欧美 | 欧美www在线| 国产精品久久7777777 | 欧美最猛性xxxxx亚洲精品 | 成人久久久 | 久久精品青青大伊人av | 久久久久一区二区三区 | 日本一区二区三区免费观看 | 综合久 |