我有一些 PHP 代码,可以在 MySQL 表上运行用户生成的 SQL。查询的可能性是有限的,但可以是,例如
SELECT City, Country, count(*) FROM Table ... GROUP BY City, Country
或
SELECT count(*) AS Count, Role, Country FROM Table ... GROUP BY Role, Country
或
SELECT count(*), TicketType, City, SUM(Quantity) AS 'Total Quantity' FROM Table ... GROUP BY TicketType, City
等等。
当呈现查询结果时,如果列是分组字段(例如 COUNT 或 SUM 或 AVG 等),我想采取一种类型的操作
除了解析查询之外,还有什么方法可以确定哪些字段是结果集中的分组字段?我正在使用 mysqli 和 PHP
最佳答案
我想这很简单,您可以在 SELECT 子句中选择的唯一字段是在 Group By 子句中分组的字段或按聚合函数分组的字段。
所以当你使用
从表中选择城市、国家/地区、计数(*) ... GROUP BY 城市、国家/地区
您的结果集将有多行,每行三列:城市、国家/地区、计数(*)。城市和国家是分组依据的字段。
关于php - 无论如何,有没有办法告诉MySQL结果中哪些字段是分组字段(PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20888818/