【发布时间】:2019-01-18 01:10:14
【问题描述】:
我的查询 sql 是这样的:
SELECT a.transaction_number a.date, a.item_number, b.desc, a.variant_code, sum(a.quantity) AS total_qty, a.cost
FROM `items_details` AS a
JOIN `items` AS b ON b.id = a.item_number
WHERE a.item_number = 0101010
GROUP BY a.variant_code
ORDER BY transaction_number, variant_code
结果如下:
我想让桌子变成这样:
我该怎么做?
【问题讨论】:
-
您应该在应用层执行此操作。虽然在 SQL 中可能,但这种重新格式化在其他工具中更合适。
-
任何时候你有一个 GROUP BY 子句,但没有聚合函数,你可以确定某个地方出了问题!
-
分组依据无效。不会在较新的 MySQL 版本上执行(除非在兼容模式下),可能会在较旧的 MySQL 版本上返回不可预测的结果。一般的 GROUP BY 规则说:如果指定了 GROUP BY 子句,则 SELECT 列表中的每个列引用必须要么标识一个分组列,要么是一个集合函数的参数!
-
@Gordon Linoff 我使用 Laravel 框架。我希望从 sql 中处理这个问题,以便分页可以正常运行
-
@Strawberry 我更新了我的问题。所以现在存在
sum
标签: mysql sql join merge group-by