我有两张 table 。
我的问题是如何从pre_order表获取所有信息,并根据该信息获取从receive_pre_order表收到的所有数量的SUM 预购 ID
。
为了清楚起见,假设我们在 recieve_pre_order 中有以下数据。
+--------------+------------+-------------------+
| pre_order_id | product_id | quantity_recieved |
+--------------+------------+-------------------+
| 1 | 1 | 10 |
| 1 | 1 | 20 |
| 1 | 1 | 10 |
+--------------+------------+-------------------+
它应该针对 pre_order_id 1
返回 quantity_recieved = 40
。
现在我已经尝试过:
$this->db->select_sum('quantity_recieved');
$this->db->from('recieve_pre_order');
return $this->db->get();
它正在工作,但是它正在从一张表中获取数据。
但我想从两个表中获取数据。
最佳答案
连接两个表表 (rpo.pre_order_id = po.id
)。将 po.id
的结果分组,因此具有相同 po.id
的所有行将被分组为一行。 sum(rpo.quantity_recieved)
将汇总这些组的数量。
select po.id, sum(rpo.quantity_recieved)
from receive_pre_order rpo
join pre_order po on rpo.pre_order_id = po.id
group by po.id;
关于php - 代码点火器。如何获取数据库列的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42643051/