信息,数据库表结构
FiscalYear FiscalMonth Dept CC Actual
FY1213 P1 IT 810 10000
FY1213 P2 IT 810 10000
FY1213 P3 IT 810 10000
FY1213 P4 IT 810 10000
FY1213 P5 IT 810 10000
FY1213 P1 AC 810 10000
FY1213 P2 AC 810 10000
FY1213 P3 AC 810 10000
FY1213 P4 AC 810 10000
FY1213 P5 AC 810 10000
FY1314 P1 IT 810 20000
FY1314 P2 IT 810 20000
FY1314 P3 IT 810 20000
FY1314 P4 IT 810 20000
FY1314 P5 IT 810 20000
FY1314 P1 AC 810 20000
FY1314 P2 AC 810 20000
FY1314 P3 AC 810 20000
FY1314 P4 AC 810 20000
FY1314 P5 AC 810 20000
就是查找同比,今年的FiscalYear 是FY1314 ,去年的是FY1213,我是想根据FiscalMonth 查找数据,
假如FiscalMonth 为P5,我想查找出FiscalMonth 小于P5的所有Actual进行汇总
Dept Actual Actual Last Y %
谢谢各位了
------解决方案--------------------
----------------------------------------------------------------
-- Author :DBA_HuangZJ(發糞塗牆)
-- Date :2014-08-20 15:24:59
-- Version:
-- Microsoft SQL Server 2012 - 11.0.5058.0 (X64)
-- May 14 2014 18:34:29
-- Copyright (c) Microsoft Corporation
-- Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.3 <X64> (Build 9600: ) (Hypervisor)
--
----------------------------------------------------------------
--> 测试数据:[TB]
if object_id('[TB]') is not null drop table [TB]
go
create table [TB]([FiscalYear] varchar(6),[FiscalMonth] varchar(2),[Dept] varchar(2),[CC] int,[Actual] int)
insert [TB]
select 'FY1213','P1','IT',810,10000 union all
select 'FY1213','P2','IT',810,10000 union all
select 'FY1213','P3','IT',810,10000 union all
select 'FY1213','P4','IT',810,10000 union all
select 'FY1213','P5','IT',810,10000 union all
select 'FY1213','P1','AC',810,10000 union all
select 'FY1213','P2','AC',810,10000 union all
select 'FY1213','P3','AC',810,10000 union all
select 'FY1213','P4','AC',810,10000 union all
select 'FY1213','P5','AC',810,10000 union all
select 'FY1314','P1','IT',810,20000 union all
select 'FY1314','P2','IT',810,20000 union all
select 'FY1314','P3','IT',810,20000 union all
select 'FY1314','P4','IT',810,20000 union all
select 'FY1314','P5','IT',810,20000 union ALL