gpt4 book ai didi

mysql - 加入具有多个引用和两个要添加的值的两个表

转载 作者:行者123 更新时间:2023-12-01 00:42:04 25 4
gpt4 key购买 nike

我有以下表格:

Table article
id v1
=========
0 10
1 7
2 0
3 0
4 5
5 0

Table article_details
id articleID v2
======================
0 0 2
1 4 7
2 4 3
3 5 1
4 1 2
5 4 2

如您所见,表“article”包含的条目具有代表“value1”的列“v1”。

“article_details”表包含对文章的引用和第二个值(“v2”)。但是,对文章的引用可以在“article_details”中出现多次。

我正在查找的查询结果在一个表中,其中第一列是 articleID(它只能在结果中出现一次)。第 2 列需要包含“v1”+ 可以在“article_details”中找到的所有“v2”以及对文章 ID 的引用。

根据上面的示例数据,我需要执行的查询是连接两个表以获得以下结果 (v3 = v1 + v2 (+v2') + (v2'')):

Table joined
articleID v3
================
0 12
1 9
2 0
3 0
4 17
5 1

id=4的文章的v3是这样计算的:v3 = 5 + 7 + 3 + 2 = 17。

查询会是什么样子?

最佳答案

为此,您可以在子查询中使用 UNIONUNION 会将两个表的结果堆叠在一起,然后外部查询将对每个 id 的值求和:

SELECT id, sum(value) as value
FROM
(
SELECT id, v1 as value from article
UNION ALL
SELECT articleID, v2 from article_details
)articleUnion
GROUP BY id

关于mysql - 加入具有多个引用和两个要添加的值的两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29943880/

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