A. sql中循环语句
可以用变量的形式来增加,不过你的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
B. sql语句怎么循环查询
selectf1fromtable1的结果集做为查询条件循环查询。
如:
set@a=selectf1fromtable1
foreach(@a)
{
select*fromtable2
wheref2=@a
}
C. 如何用Sql语句循环执行语句
SQL语句无法实现循环,只能通过程序或者存储过程来实现。
如果只是一次性工作,则建议直接用EXCEL的公式手批量生成SQL语句 然后一次性贴到MYSQL的命令行工具中执行即可。
S1 : 创建一个模板表 create table t (id int, col1 int , col2 varchar(10));
S2 : EXCEL中在A1输入 ="create table t"&ROW()&" like t;"
S3: 下拉填充这个A1至A1000
create table t1 like t;
create table t2 like t;
create table t3 like t;
create table t4 like t;
create table t5 like t;
create table t6 like t;
create table t7 like t;
create table t8 like t;
create table t9 like t;
create table t10 like t;
S4: 复制到MYSQL命令行工具一次行执行。
D. sql server 循环插入语句
--可以不用循环哦,先建好临时表,和table201401——table201412的表
--下面的代码是把满足table2014%这个条件的表分组统计后插入到临时表
execsp_MSforeachtable
@command1="insertinto#tempselect姓名,substring('?',13,6),count(日期)
from?groupby姓名",
@whereand="Ando.Namein(SelectnameFromsys.objectsWhereType='U'And
Namelike'table2014%'
)"
--当然循环也行
Declare@NameVarchar(100)
Declare@sqlVarchar(1000)
DECLARECurCURSORFOR
SelectnameFromsys.objectsWherenamelike'table2014%'
OPENCur
FETCHNEXTFROMCurINTO@Name
WHILE@@FETCH_STATUS=0
BEGIN
Set@sql='insertinto#tempselect姓名,right('''+@Name+''',6),count(日期)
from'+@Name+'groupby姓名'
Exec(@sql)
FETCHNEXTFROMCurINTO@Name
END
CLOSECur
DEALLOCATECur
select*from#temp
E. 如何用 SQL 产生连续日期
Declare @mindate datetime
Declare @maxdate datetime
set @mindate = '2010-01-01'
set @maxdate = '2010-02-01'
;with temptab(date) as
( select @mindate
union all
select dateadd(d,1,temptab.date) as date
from temptab
where dateadd(d,1,temptab.date)<=@maxdate
)
select * from temptab
F. sql while循环语句问题
这个不用while,用while简直是浪费资源,而且也慢,用语句就行了~
insert
into
新表
select
*
from
表
一句搞定,还可以自己加where条件做筛选插入~
G. sql中按时间循环查询 1个表里有按每小时每人的交易量,我想按日合计,查出交易每天达到一定数额的人的次数
呵呵,很简单,只要简单做一样转换就行!
declare @temp table(name nvarchar(10),cdate varchar(20),mount int)
insert into @temp select '张三', '2010102401' ,500
insert into @temp select '张三', '2010102401' ,500
insert into @temp select '李四', '2010102402' ,400
select name,convert(varchar(10),ldate,120) cdate,sum(mount) total from
(
select *,cast(substring(cdate,0,5)+'-'+substring(cdate,5,2)+'-'+substring(cdate,7,2) as datetime) ldate from @temp
) a
group by name,ldate
结果如下:
name cdate total
---------- ---------- -----------
李四 2010-10-24 400
张三 2010-10-24 1000
H. sql语句,按年度查询循环查询一到十二月的汇总表,那位高手帮我写一个例子啊
假如数据库表:你的费用表
数据字段: 用户, 费用, 日期
select 用户, sum(费用), year(日期), month(日期) from
( select 用户, 费用, 日期 from 你的费用表 where 用户 ='你给定的值' ) ttt group by 用户,year(日期), month(日期)