【求SQL语句】关于自动编号,取字段长度(数据库SQL SERVER2000 up有分) 字母+年+月的长度select patindex('%[0-9]%',cg_no)+3 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 thank you!哪位有闲时,帮忙写个存储过程 这是一个例子,自己分析档案号的格式: 四位年+两位月+两位日+四位档案号 即:200202260001 档案编号表:记录当前最新的档案编号,只有一个记录.为了防止记录 出现重复的情况. CREATE PROCEDURE prGetNo --产生按年月日排列的档案号 @No varchar(12) output ---为产生的档案号AS declare @Year Int, @Month int, @Day int, @Temp_No varchar(12), @NeedNo varchar(4) --档案号BEGIN select @year=Year(GetDate()) select @Month=Month(GetDate()) select @Day=Day(GetDate()) select @No=Str(@Year,4,0)+ (select case when @Month>=10 then Str(@Month,2,0) when @Month<10 Then '0'+Str(@Month,1,0) end)+ (select case when @Day>=10 then Str(@Day,2,0) when @Day<10 Then '0'+Str(@Day,1,0) end) SELECT @Temp_No = 档案编号 FROM 档案编号表 IF @No <> SUBSTRING( @Temp_No,1,8) SELECT @No = @No+'0001' ELSE BEGIN SELECT @RandNo = STR(CONVERT(int,(SUBSTRING( @Temp_No ,9,4))+1),4,0) SELECT @RandNo = REPLACE( @RandNo,' ','0') SELECT @No = @No + @RandNo END UPDATE 档案编号表 SET 档案编号 = @NoENDEND 字符串问题,帮帮忙啊 查询问题 我本机不能连上远程SQL Server 服务器 Access 明明申明了函数 为啥显示函数未定义? 求一sql语句,在线等 这个语句该怎么写(向josy兄提问)。 向fcuandy大师提问 语句的执行速度太慢了,有谁出个好主意,100分送上了。 高分求算法 一个SQL查询统计问题 用SQL语句访问注册表 安全性:怎样在"还原数据库"时请用户提供密码!
哪位有闲时,帮忙写个存储过程
即:200202260001
档案编号表:记录当前最新的档案编号,只有一个记录.为了防止记录 出现重复的情况.
CREATE PROCEDURE prGetNo --产生按年月日排列的档案号
@No varchar(12) output ---为产生的档案号
AS
declare @Year Int,
@Month int,
@Day int,
@Temp_No varchar(12),
@NeedNo varchar(4) --档案号
BEGIN
select @year=Year(GetDate())
select @Month=Month(GetDate())
select @Day=Day(GetDate())
select @No=Str(@Year,4,0)+
(select
case
when @Month>=10 then Str(@Month,2,0)
when @Month<10 Then '0'+Str(@Month,1,0)
end)+
(select
case
when @Day>=10 then Str(@Day,2,0)
when @Day<10 Then '0'+Str(@Day,1,0)
end)
SELECT @Temp_No = 档案编号 FROM 档案编号表
IF @No <> SUBSTRING( @Temp_No,1,8)
SELECT @No = @No+'0001'
ELSE
BEGIN
SELECT @RandNo = STR(CONVERT(int,(SUBSTRING( @Temp_No ,9,4))+1),4,0)
SELECT @RandNo = REPLACE( @RandNo,' ','0')
SELECT @No = @No + @RandNo
END
UPDATE 档案编号表
SET 档案编号 = @No
END
END