gpt4 book ai didi

sql - 从两个表创建第三个表

转载 作者:行者123 更新时间:2023-11-29 13:50:50 25 4
gpt4 key购买 nike

我必须利用两个表来创建第三个表。表 A 没有包含所有需要的信息,因为它只列出了人们用来了解我们公司的来源,而表 B 列出了人们可以利用的所有可能来源。我希望 TableC 为未使用的源显示 0%。这在 postgreSQL 中怎么可能?

select "Source", to_char(100 * count(*) / sum(count(*)) over (), '990%') as "The Ratio"
from TableA
group by "Source";

Source: The Ratio:

Website 55%
TV 25%
Radio 20%


Select * from Table2:


Source:

Website
TV
Radio
BillBoard
Referral

结果我谦虚地请求帮助:

Source:                The Ratio:

Website 55%
TV 25%
Radio 20%
BillBoard 0%
Referral 0%

最佳答案

像这样将结果与 table2 左连接:

select t2."Source", to_char(coalesce(t1."The Ratio",0),'990%') "The Ratio"
from table2 t2 left outer join
(select "Source", 100 * count(*) / sum(count(*)) over () "The Ratio"
from TableA
group by "Source") t1
on t1."Source" = t2."Source";

关于sql - 从两个表创建第三个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41468601/

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