select count(*) from 表1 where empid=:var1 and cpid=:var2
再把这个语句放到循环里,在循环里改变var1,var2就行了。
再把这个语句放到循环里,在循环里改变var1,var2就行了。
解决方案 »
- SQL Server数据库名称怎么设置为IP地址
- 简单问题 不知道哪里出错了 解决后散分
- 安装SQLSERVER2005时遇到的问题。高分请教。在线等。
- 一条删除语句,怎么写??
- inner join 与 where 有什么不同
- 触发器问题
- sql2000触发器如何更新另一个服务器上的表
- 这个SQL语句为什么不对?
- sql server中将字符型转换成数字型的函数是什么?
- 初学者的学习-15-->backup,recovery中的一些术语
- 还原备份,我用数据文件和日志文件覆盖我新创建的数据库的数据文件和日志文件,但出错
- 紧急求救---我关联两个表时,为什么总提示表中的列与主键或unique约束不匹配
where t1.cpid=t2.cpid group by empid,cpidi write it now of no test
you can update it and can get i guessing
declare @rnum int,
@i int
@sql varchar(8000)
set @i=0
select count(a.*) from (select distinct empid from talbe1) a
set @sql='select cpid,'
while (@i<=@rnum)
begin
@i=i+1
set @sql=@sql+'sum(case when empid ="用户"'+cast(@i as varchar(5))+' then scsl end) as 用户'+cast(@i as varchar(5))+'数量,sum(case when empid ="用户"'+cast(@i as varchar(5))+' then scje end) as 用户'+cast(@i as varchar(5))+'金额'
//你最好使用户编号与@i对应起来,否则,也有很多方法,如建立游标或者定义数组,但是都不如这样方便一点
if (@i<>@rnmu)
begin
set @sql=@sql+','
end
end
set @sql=@sql+' from table1 froup by empid'
exec(@sql)