是的,我知道。标题很愚蠢,难以理解。
问题:
有一个DB1
和一个DB2
。
DB1
有column
名为id
和price
。 id
是301
等每个项目的唯一编号,依此类推。此id
中的每个DB
中只有一个。
DB2
包含一个名为id
的列和一个名为price
的列。此DB有责任通过id
脚本收集有关每个php
(项目)的数据。
这意味着多行具有相同的唯一id
。
要展示的图片:
我正在尝试做什么:
一个查询id
的脚本(将id与另一个表匹配),sum
列出所有price
列相同的{{1} }}
我理解id
innerjoin
但我想在显示之前SELECT db1.id, db2.price
FROM db1
INNER JOIN db2
ON db1.id=db2.id;
所有sum
行。我该怎么办?
答案 0 :(得分:1)
你想要的是这个:
(我想你也想显示db1.price(或db1中的其他字段,否则没有意义有这个连接)
SELECT db1.id, db1.price, db2s.price -- rest of db1 fields here
FROM db1
INNER JOIN (select id, sum(price) price from db2 group by id) as db2s
ON db1.id=db2s.id;
答案 1 :(得分:0)
我认为你不需要加入。这应该足够了:
SELECT id, sum(price) as price_sum FROM db2 GROUP BY id
这应该给你2列: