按名称计算出现次数

时间:2013-07-05 14:39:01

标签: html sql

这里的第一个计时器,请原谅我,如果我的问题有些混乱。我试图使用从SQL表中提取的数据在动态表中显示内容,我很难搞清楚逻辑。

表结构看起来像这样

NAME   Homeruns  Hits    Bunts   Total

Jeff       0       3       1       4

Sally      2       4       0       6

John       3       7       0       10

表格中的数据结构的方式是正在进行的游戏类型(本垒打,命中,短打等)在一列中。我将这个专栏称为PLAY。该名称位于单独的列中。此列将被称为NAME。表名是BASEBALL。

1 个答案:

答案 0 :(得分:3)

这称为透视查询。您可以在带有聚合的标准SQL中执行此操作:

select name,
       sum(case when play = 'HomeRun' then 1 else 0 end) as HomeRun,
       sum(case when play = 'hit' then 1 else 0 end) as Hit,
       sum(case when play = 'bunt' then 1 else 0 end) as Bunt,
       count(*) as Total
from baseball bb
group by name;

这是一个非常简单的SQL查询,所以我猜你的专业知识在数据库方面比在编程方面要少。我建议您花时间正确学习SQL语言。