gpt4 book ai didi

sql - 将临时表联合到最终临时表

转载 作者:行者123 更新时间:2023-12-02 17:47:28 26 4
gpt4 key购买 nike

我在 SQL Server 中创建了大约 10 个差异临时表,我想要做的是将它们全部联合到一个最终的临时表中,将它们全部保存在一个表中。所有表都只有一行,看起来与下面的两个临时表非常相似。

这是我到目前为止所拥有的,这是一个只有两个临时表的示例,因为它们都与这个完全一样然后#final 是我想要将所有内容联合到的表:

      create table #lo
(
mnbr bigint
)
insert into #login (mnbr)
select distinct (_ID)
FROM [KDB].[am_LOGS].[dbo].[_LOG]
WHERE time >= '2012-7-26 9:00:00

Select count(*) as countreject
from #lo

create table #pffblo
(
mber_br
)
insert into #pffblo (mber_br)
select distinct (mber_br)
from individ ip with (nolock)
join memb mp with (nolock)
on( ip.i_id=mp.i_id and mp.p_type=101)
where ip.times >= '2012-9-26 11:00:00.000'

select count(*) as countaccept

create table #final
(
countreject bigint
, Countacceptbigint
.....
)

insert into #final (Countreject, Countaccept....more rows here...)
select Countreject, Countaccept, ...more rows selected from temp tables.
from #final
union
(select * from #lo)
union
(select * from #pffblo)
select *
from #final

drop table #lo
drop table #pffblo
drop table #final

如果这是将这些临时表的行联合到最后一个的形式。那么这种正确的方法就是显示所有那些被合并的行。当我执行此并集时,我收到消息 union 中的列数需要匹配 union 中选择的列数

最佳答案

我认为您错误地使用了联合。当您需要具有相同结构的数据集并且希望将它们放入一个数据集中时,可以使用并集。

例如:

CREATE TABLE #Table1
(
col1 BIGINT
)

CREATE TABLE #Table2
(
col1 BIGINT
)

--populate the temporary tables

CREATE TABLE #Final
(
col1 BIGINT
)

INSERT INTO #Final (col1)
SELECT *
FROM #Table1
UNION
SELECT *
FROM #Table2

drop table #table1
drop table #table2
drop table #Final

我认为您想要做的是获取 1 个数据集,其中包含您所有表格的计数。联盟不会这样做。

最简单的方法(虽然不是很高效)是执行如下选择语句:

CREATE TABLE #Table1
(
col1 BIGINT
)

CREATE TABLE #Table2
(
col1 BIGINT
)

--populate the temporary tables

CREATE TABLE #Final
(
col1 BIGINT,
col2 BIGINT
)




INSERT INTO #Final (col1, col2)
select (SELECT Count(*) FROM #Table1) as a, (SELECT Count(*) FROM #Table2) as b

select * From #Final

drop table #table1
drop table #table2
drop table #Final

关于sql - 将临时表联合到最终临时表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12905465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com