--创建存储过程
create procedure p
@str varchar(20)
asdeclare @num varchar(20),@nums varchar(50),@i int,@tmp int
select @num=@str,@i=1,@nums='',@tmp=0
while @i<=len(@num)
begin
if substring(@num,@i,1)<>substring(@num,@i+1,1)
begin
set @i=@i+1
if @tmp>=3
set @nums=@nums+' '+substring(@num,@i-1,1)+'出现了'+convert(varchar,@tmp)+'次'
set @tmp=1
end
else
begin
select @tmp=@tmp+1,@i=@i+1
end
end
if @nums=''
select '没有重复出现超过3次的数字'
else
select @numsgo--测试
exec p '345444322222'--结果
/*
--------------------------------------------------
4出现了3次 2出现了5次(所影响的行数为 1 行)
*/
create procedure p
@str varchar(20)
asdeclare @num varchar(20),@nums varchar(50),@i int,@tmp int
select @num=@str,@i=1,@nums='',@tmp=0
while @i<=len(@num)
begin
if substring(@num,@i,1)<>substring(@num,@i+1,1)
begin
set @i=@i+1
if @tmp>=3
set @nums=@nums+' '+substring(@num,@i-1,1)+'出现了'+convert(varchar,@tmp)+'次'
set @tmp=1
end
else
begin
select @tmp=@tmp+1,@i=@i+1
end
end
if @nums=''
select '没有重复出现超过3次的数字'
else
select @numsgo--测试
exec p '345444322222'--结果
/*
--------------------------------------------------
4出现了3次 2出现了5次(所影响的行数为 1 行)
*/
解决方案 »
- 在sql server2000实现计算
- 简单的过程
- 如何在Xp professional中安装sql server 2000服务器组件?
- 这句话正确吗?sql="select * from user where dateandtime="#date#"
- SQL2005有一个表今天只能查询不能修改,在线等
- 对象依赖关系难题,求助于各位大侠
- 此语句在存储过程中有错误,但在查询分析器中正确,为什么?
- SQL语句中count和sum使用的问题
- 存储过程里面怎么样写定时刷新
- 数据升迁问题--请指教----在线等待
- 在线等待!!!!Windows Advanced Server+SQL Server 2000 Enterprise,可用空间不足超级难题!!!!!
- 简单查询语句,还请高手们出手啊:)
T-SQL中的正则表达式
判断有大于三连续相同数字的正则 (\d)(\1){2,}
我研究去了- -;;
delete from table where table_field like '%000%'
delete from table where table_field like '%111%'……
简单又快!!!