读书人

select的结果导入到一个临时表(列是动

发布时间: 2012-03-09 16:54:57 作者: rapoo

select的结果导入到一个临时表(列是动态的)里的问题
我现在用一个sql语句查了n张表,想把查询的结果导到一个历史表里,例如
select c.BranchName as 公司,
sum(case endreason when '总人数 ' then 1 else 0 end) 总人数,
sum(case endreason when '全勤人数 ' then 1 else 0 end) 全勤人数
from
表1 la left join 表2 a on la.id=a.id left join 表3 b on a.depID=b.depid left join 表4 c on b.name=c.name group by c.name , c.nameid order by c.nameid asc


大体就是这个意思,反正这个sql语句能查出我需要的结果集,但是我把这个结果填加到一个临时表里(临时表目前不存在),请问怎么搞定?谢谢~

问题补充:
insert into #P select
这个方法是不错,不过这样必须先建一个临时表,问题就在这了,我查询的时候,列不是固定的!所以用这种方法不大行~还有其他办法不?谢谢了!

各位高手手好快啊!刚才我还没写完问题补充,就都回答完了~我还是再开一个帖子吧~刚才那个大家都不进了~哎~~~谢谢各位了!

[解决办法]
select c.BranchName as 公司,
sum(case endreason when '总人数 ' then 1 else 0 end) 总人数,
sum(case endreason when '全勤人数 ' then 1 else 0 end) 全勤人数 into #t
from
表1 la left join 表2 a on la.id=a.id left join 表3 b on a.depID=b.depid left join 表4 c on b.name=c.name group by c.name , c.nameid order by c.nameid asc
[解决办法]
select * into # from table
[解决办法]

SQL code
可以这样。直接复制表结构和表数据;select * into #temp from (查询语句)a这样直接将查出来的结果全部导到#temp里面去了。。
[解决办法]
LZ不知道insert into #temp select * from tablename 需要先建临时表;
而select * into #temp from tablename 不需要建临时表吗?
还是每次都要保存历史查询呢?

读书人网 >SQL Server

热点推荐