当前位置: 代码迷 >> Sql Server >> SQL 统计数据 您会不?
  详细解决方案

SQL 统计数据 您会不?

热度:247   发布时间:2016-04-24 19:28:30.0
SQL 统计数据 你会不???
各位路过的达人,
如何统计一个表中相同字段全部数量,可能表达的不是很完整,举一例子,说明:
表A
  日期      名称       个数 
  12-1    公司A      2
  12-1    公司B      1
  12-1    公司A      8
  12-1    公司C      5
  12-1    公司D      8
  12-2    公司A      10
  12-2    公司B      10
  12-2    公司B      5
  12-2    公司C      1
  12-2    公司C      6

我想要的结果是:
计算各个公司每日的数量总和
  日期      名称       总数 
  12-1    公司a      10
  12-1    公司b      1
  12-1    公司c      5
  12-1    公司d      8
  12-2    公司a      10
  12-2    公司 b     15
  12-2    公司c      7

------解决方案--------------------

select 日期,名称,sum(个数) '总数'
 from 表A
 group by 日期,名称

------解决方案--------------------
  select 日期, 名称,SUM(个数 ) as 个数 
  from 表A
  group by 日期, 名称

------解决方案--------------------
----------------------------------------------------------------
-- Author  :DBA_Huangzj(發糞塗牆)
-- Date    :2013-12-26 10:01:03
-- Version:
--      Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64) 
-- Dec 28 2012 20:23:12 
-- Copyright (c) Microsoft Corporation
-- Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
--
----------------------------------------------------------------
--> 测试数据:[A]
if object_id('[A]') is not null drop table [A]
go 
create table [A]([日期] varchar(4),[名称] varchar(5),[个数] int)
insert [A]
select '12-1','公司A',2 union all
select '12-1','公司B',1 union all
select '12-1','公司A',8 union all
select '12-1','公司C',5 union all
select '12-1','公司D',8 union all
select '12-2','公司A',10 union all
select '12-2','公司B',10 union all
select '12-2','公司B',5 union all
select '12-2','公司C',1 union all
select '12-2','公司C',6
--------------开始查询--------------------------

select [日期],[名称],SUM([个数])[总数]
from [A]
GROUP BY [日期],[名称]
----------------结果----------------------------
/*
日期   名称    总数
---- ----- -----------
12-1 公司A   10
12-2 公司A   10
12-1 公司B   1
12-2 公司B   15
12-1 公司C   5
12-2 公司C   7
12-1 公司D   8 
*/