php - MySQL问题: The right way to calculate some data from different tables

标签 php mysql database

我们有一个表A,其中存储有关用户投资的数据;示例列user_idproject_idamount

我们还有一个表B,其中存储有关项目和投资总额的数据;列 project_idtotal_amount

使用 PHP,我们可以计算 A 中的金额并将 total_amount 写入 B

问题:是否可以在MYSQL级别自动计算数据以避免PHP中不必要的操作?

如果是,您能给我举个例子吗?

最佳答案

UPDATE tableB
LEFT JOIN (
    SELECT project_id, SUM(amount) total_amount
    FROM tableA
    GROUP BY project_id
) amounts
ON amounts.project_id = tableB.project_id
SET tableB.code_counter=amounts.total_amount

这应该有效。

关于php - MySQL问题: The right way to calculate some data from different tables,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56473653/

相关文章:

mysql - 在 MySQL SERVER 8.0 中,PASSWORD 函数不起作用

ios - CoreData 将一条记录标记为最爱(互斥)

php - 合理的安全级别与 sql 注入(inject)?

javascript - 如何从javascript获取变量到php?

python - Django ORM,将无日期时间作为 0 插入 MySQL

php - 为什么 GROUP_CONCAT + DISTINCT 在某些服务器上会触发内存不足(需要 8388580 字节)?

php - 如何从我的热门列表中排除某些名字

php - 将 DateInterval 格式化为 ISO8601

python - 如何在 mysql/django 中添加一个仅限一行的表?

php - 如何设计一个带有 MySQL 数据库连接的守护进程