以下是一个示例的SQL查询,按状态统计多个列,并按名称报告:
SELECT name,
SUM(CASE WHEN status = 'Open' THEN 1 ELSE 0 END) AS open_count,
SUM(CASE WHEN status = 'Closed' THEN 1 ELSE 0 END) AS closed_count,
SUM(CASE WHEN status = 'In Progress' THEN 1 ELSE 0 END) AS in_progress_count
FROM your_table
GROUP BY name;
这个查询假设你有一个表叫做your_table
,其中包含了name
和status
列。你可以根据你实际的表结构修改这些列名。
这个查询使用了CASE
表达式来将每个状态映射到对应的计数。SUM
函数用于计算每个状态的总数。GROUP BY
子句用于按名称进行分组。
你可以根据你的实际需求修改查询,例如添加其他条件、筛选特定的名称等。