我有一个关于 MySQL 的问题。我有一个包含以下字段的表:
- worker 姓名
- 日期
- 工作时间
好的,如果我执行此查询:
SELECT WorkerName, Date, HoursWorked, SUM(HoursWorked) FROM myTable GROUP BY WorkerName
我的字段按工作人员姓名分组,但只有一行。我想在同一行中显示该 worker 的所有工作天数,在另一行中显示其他 worker 的所有工作天数。
在 PHP 中实际上有一个 While 可以显示所有工作的日期,但只显示排序的第一天的小时数。
最佳答案
您可以使用GROUP_CONCAT聚合函数:
SELECT
WorkerName,
GROUP_CONCAT(Date) AS dates_worked,
SUM(HoursWorked)
FROM
myTable
GROUP BY
WorkerName
关于php - 按Name等字段对Mysql查询进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28858103/