sql 创建临时表
2016-10-14 16:52
218 查看
declare @channelid varchar(100) set @channelid='''WH00026'',''WH00083''' declare @sql varchar(1000) if(object_id('tempdb.dbo.#ac') is not null) begin drop table #ac end create table #ac ( channelid varchar(50), pmoney decimal(18,2), ptype tinyint, inday varchar(10), scale varchar(10), comScale varchar(10) ) set @sql='insert into #ac' set @sql=@sql+' select a.channelid,a.pmoney,a.ptype,a.inday,a.scale,a.comScale' set @sql=@sql+' from(' set @sql=@sql+' select oc.channelid,sum(totalFee) as pmoney,inday,scale,comScale,1 as ptype from orderCPS oc' set @sql=@sql+' left join userInfo u on oc.channelid=u.channelid' set @sql=@sql+' where inday between ''2016-10-13'' and ''2016-10-13'' and oc.channelid in ('+@channelid+') and (comOrderStatus is null or comOrderStatus=0)' set @sql=@sql+' group by oc.channelid,inday,scale,comScale' set @sql=@sql+' union all' set @sql=@sql+' select oc.channelid,sum(totalFee) as pmoney,inday,scale,comScale,2 as ptype from orderCPS oc' set @sql=@sql+' left join userInfo u on oc.channelid=u.channelid' set @sql=@sql+' where inday between ''2016-10-13'' and ''2016-10-13'' and oc.channelid in ('+@channelid+') and orderStatus=0' set @sql=@sql+' group by oc.channelid,inday,scale,comScale) a' print @sql exec(@sql); select * from #ac
相关文章推荐
- 使用2000创建临时Job异步执行SQL脚本
- 创建临时表,一条sql语句一次插入多条记录
- sql中用临时表 或 创建视图那个效率比较快!
- SQL创建临时表
- sql两种创建临时表 验证存在于删除
- 在SQL库中创建表或临时表的一种方法
- SQL中临时表的创建及其操作
- Sql 怎么创建临时表
- 运用sql语句创建临时表
- SQL 动态创建临时表
- sql判断临时表是否存在和创建临时表的方法
- sql 创建临时表的两种写法和删除临时表
- sql server中如何创建,使用,释放临时表
- SQL临时表的创建+查询
- MS SQL 中判断 数据库, 存储过程,表,临时表,视图,函数,用户,用户创建对象 等是否存在 SQL脚本
- pl/sql创建临时表
- SQL创建临时表
- SQL 综合应用(1.创建临时表,为后续查询所用) 实例_(学生,课程表,选修表)
- sql 创建临时表 并且插入多条数据
- SQL创建临时表