最近做專案遇到自動產生順序字元的功能。
如: aaaa 、
下乙個為aaab
特寫了乙個sql 自動產生的方法。
--根據傳入引數產生下乙個大小字元
create function [dbo].[getnextcode](
@code char(1)
)returns varchar(10)
asbegin
declare @allchar nvarchar(30),@index int;
set @allchar='abcdefghijklmnopqrstuvwxyza';
set @index=charindex(@code,@allchar)
return substring(@allchar,@index+1,1)
end--根據傳入數量產生一定資料的'aa'
create function [dbo].[getcounta](
@count int)
returns varchar(10)
asbegin
declare @result varchar(10);
set @result='';
while(@count>0)
begin
set @result=@result+'a'
set @count=@count-1;
endreturn @result;
end--這個就是我們需要的傳入乙個10個以內的字元產生下個字元
create function [dbo].[getsyscode](
@maxcode varchar(10)
)returns varchar(10)
asbegin
declare @temp char(1),@length int,@index int,@returnchar varchar(10);
set @length=len(@maxcode);
set @index=@length;
while(@index>0)
begin
set @temp=substring(@maxcode,@index,1);
if(@temp<'z')
begin
set @temp=[dbo].[getnextcode](@temp);
set @returnchar=substring(@maxcode,1,@index-1)+@temp+dbo.getcounta(@length-@index);
return @returnchar;
endelse
begin
set @index=@index-1;
endend
return @returnchar;
end
大小字母排序
static void main string args a a d d f f m datetime dtstart datetime.now region me arraylist al new arraylist chars al.sort arraylist alist bubllesort...
大小字端轉化工具(redis)
redis裡的大小字端轉化工具,實現的很精巧,特別是測試用例。endinconv.c endian conversions utilities.include toggle the 16 bit unsigned integer pointed by p from little endian to ...
計算結構體大小(位元組對齊)
一,預設對齊方式 位元組對齊的細節和具體編譯器實現相關,但一般而言,滿足以下三個準則 也是vc預設對齊方式 1,結構體變數的首位址能夠被其最寬基本型別成員的大小所整除 0能被任意整數整除 2,結構體每個成員相對於結構體首位址的偏移量都是該成員型別大小的整數倍,如有需要編譯器會在成員之間加上填充位元組...