gpt4 book ai didi

mysql - 如何将table1中的table2更新为table2中的相应条目?

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

我想统计银行在不同表中的出现次数,并在 FinalTable 的相应列中进行更新。

银行表:

  BankName  ErrorCode
SBI 200
ICICI 200
SBI 400
SBI 500
SBI 503

ATM表:

BankName    ErrorCode
ICICI 200
ICICI 400
ICICI 400
SBI 500
SBI 503

MitraTable:

BankName    ErrorCode
ICICI 200
ICICI 200
SBI 400
SBI 500
SBI 503
PNB 501

决赛 table :

BankName    BankCount   ATMCount    MitraCount  TotalCount
ICICI 1 3 2 6
SBI 4 2 3 9
PNB 0 0 1 1

我想统计不同银行的出现次数并在 FinalTable 中设置值。

最佳答案

您可以将UNION ALL与条件聚合一起使用:

SELECT BankName,
COUNT(CASE WHEN src = 'Bank' THEN 1 END) AS BankCount,
COUNT(CASE WHEN src = 'ATM' THEN 1 END) AS ATMCount,
COUNT(CASE WHEN src = 'Mitra' THEN 1 END) AS MitraCount,
COUNT(*) AS TotalCount

FROM (
SELECT BankName, 'Bank' AS src
FROM BankTable

UNION ALL

SELECT BankName, 'ATM' AS src
FROM ATMTable

UNION ALL

SELECT BankName, 'Mitra' AS src
FROM MitraTable) AS t
GROUP BY BankName

字段src用于将源表返回到使用UNION ALL操作结果的外部查询。使用此字段,我们可以执行条件聚合,以便计算每个源表中每个存储体的出现次数。

关于mysql - 如何将table1中的table2更新为table2中的相应条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43092450/

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