SQL中循环语句

王朝知道·作者佚名  2009-03-30
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

我有一个空表,现在希望一次输入10000条记录用来测试用,但是记录里面有两个字段是字符型的,且它两个需要类似于数字上的自加希望写个SQL语句来实现表名是 user_info其中userid(char)和 authnum(char) 均为字符型 但我希望表中这两项值可以自加 如 userid 001 002 003 authnum 200001 200002 200003下面是一个小例子,当前现在实现不了 values里的前两个字段为userid authnumGOWHILE (SELECT MAX(userid) FROM user_info) <10000BEGINinsert into user_info values(501,2000501,0,'user',0,'',0,'EMS',2006-8-19)SELECT MAX(userid) FROM user_infoIF (SELECT MAX(userid) FROM user_info) > 10000BREAKELSECONTINUEEND希望有朋友可以告诉我如何详细写出实现方法。先谢谢啦

參考答案:

可以用变量的形式来增加,不过你的userid 三位显然不够,因为你要加10000数据,所以要和authnum形式一样,5位才够

下面是一个简单的例子,你可以根据实际需求来改一下。

DECLARE @i int

DECLARE @strUserId varchar(10)

DECLARE @strAuthnum varchar(10)

Set @i = 0

WHILE @i < 10000

BEGIN

Set @i =@i +1

SET @strUserId = RIGHT('00000' + CAST(@i AS varchar(10)),5)

SET @strAuthnum = @strUserId

insert into user_info values(@strUserId,@strAuthnum)

END

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航