首页 > 解决方案 > 如何在 postgresql 中使用 select 查询插入数据?

问题描述

如何使用选择查询总和插入数据?我试过了。结果是受影响的成功> 受影响的行: 1. 但是表中没有添加行。

CREATE TABLE Clases(Segment1_ID char(4), Segment1_Name varchar(75), CompanyID char(4), amount Float(53));

INSERT INTO Clases (Segment1_ID, Segment1_Name, CompanyID, amount)
select Segment1_ID, Segment1_Name, dataupload1h_companyid CompanyID, sum(case when Segment3_Formula = '+' then dataupload1d_amount else dataupload1d_amount * -1 end) Amount
from t_dataupload1_header
inner join t_dataupload1_detail
    on dataupload1h_id = dataupload1d_id
inner join M_Account
    on dataupload1d_accountid = Account_ID
    and dataupload1h_companyid = Account_CompanyID
inner join M_Segment4
    on Account_Segment4ID = Segment4_ID
    and dataupload1h_companyid = Segment4_CompanyID
inner join M_Segment3
    on Segment4_Segment3ID = Segment3_ID
    and dataupload1h_companyid = Segment3_CompanyID
inner join M_Segment2
    on Segment3_Segment2ID = Segment2_ID
    and dataupload1h_companyid = Segment2_CompanyID
inner join M_Segment1
    on Segment2_Segment1ID = Segment1_ID
    and dataupload1h_companyid = Segment1_CompanyID
where dataupload1h_companyid = '1000'
group by Segment1_ID, Segment1_Name, dataupload1h_companyid
order by Segment1_ID, Segment1_Name, dataupload1h_companyid;

请帮忙。谢谢

标签: postgresql

解决方案


如果选择返回所需的结果,然后检查是否在 PgAdmin 中打开了自动提交(我想你正在使用这个)或者把 COMMIT; 插入后。


推荐阅读