php - 使用 SELECT SUM() GROUP BY 时,如何才能获取各个值?

标签 php mysql sql

values = 2,3,4

执行JOIN (SELECT *, SUM(values) A​​S MaxValues FROM table GROUP BY id)时,$a = $data['MaxValues'] 将等于9 理应如此。但是,我怎样才能提取单个值(2,3,4)?尝试对 $b = $data['values'] 进行 foreach 只会给我其中一个值。我假设是因为需要 GROUP BY。我对这一切还是陌生的。谢谢

最佳答案

您正在寻找group_concat(),我认为:

JOIN (SELECT id, SUM(values) AS MaxValues, group_concat(values) as values
      FROM table
      GROUP BY id)

注意:您不应将 SELECT *GROUP BY 一起使用。仅包含 GROUP BY 子句中的列。

关于php - 使用 SELECT SUM() GROUP BY 时,如何才能获取各个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44443501/

相关文章:

sql - 此 SELECT 查询需要 180 秒才能完成

mysql - 将数据从本地计算机上的 dbf 文件持续导入 MySQL 的最简单方法

php - 无法访问 codeigniter 中的空属性

mysql - mysqldump --add-drop-database generate !40000 是否正确?

php - Firebase 托管 - 访问 API?

mysql - 如何在 MYSQL 的 where 子句中使用 Concat?

mysql - 从 H2 中的多对多关系中高效选择

mysql - 从列表中获取不在数据库中的 ID

javascript - javascript和php按位运算结果的区别

php - 无法在 php session 中传递 mysqli 连接