首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每个团队每天的sql选择信息

每个团队每天的sql选择信息
EN

Stack Overflow用户
提问于 2012-11-21 15:19:56
回答 2查看 89关注 0票数 0

我需要从数据库中选择一些信息,每天和每个团队。我想看看每天买多少东西,为每支球队。例如,如果有6个项目在2012-11-21,我想要我的结果显示:第一组购买了3个项目,团队2-2项目和最后一个团队1项目。我可以为一个团队获取信息,使用如下:

代码语言:javascript
复制
select count(CONVERT(date, getdate())) as Team1
from items
where team = 1
group by CONVERT(date, getdate())

但我不知道如何才能得到我需要的信息,所有的球队。

编辑

我需要这样的结果:

代码语言:javascript
复制
Date      |Team1   | Team2   | Team3  
2012-11-21|2 items | 3 items | 0 items 

我的桌子结构是这样的:Date, Product, Price, Team

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-21 15:32:14

这里您需要的是PIVOT您的桌子如下所示:

代码语言:javascript
复制
SELECT 
  Date,
  SUM(CASE WHEN team = 'team1' THEN 1 ELSE 0 END) 'team1',
  SUM(CASE WHEN team = 'team2' THEN 1 ELSE 0 END) 'team2',
  SUM(CASE WHEN team = 'team3' THEN 1 ELSE 0 END) 'team3'
FROM Tablename
GROUP BY date;
票数 0
EN

Stack Overflow用户

发布于 2012-11-21 15:23:38

你需要GROUP BY团队和约会。

代码语言:javascript
复制
SELECT datecol, team, COUNT(*)
FROM items
GROUP BY datecol, team

根据您更新的需求,并且不知道DBMS是什么:

代码语言:javascript
复制
SELECT a.datecol AS 'Date',
    (SELECT COUNT(*) FROM items WHERE datecol = a.datecol AND team = '1') AS 'Team1',
    (SELECT COUNT(*) FROM items WHERE datecol = a.datecol AND team = '2') AS 'Team2',
    (SELECT COUNT(*) FROM items WHERE datecol = a.datecol AND team = '3') AS 'Team3'
FROM items a
GROUP BY a.datecol
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13496341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档