注册 登录
编程论坛 SQL Server论坛

请教关于同期销售额对比问题!

心情如画 发布于 2008-07-02 14:53, 967 次点击
日期       销售额
2007-01    200
2007-02    300
2007-03    400

2008-01    300
2008-02    500
2008-03    700

我想得到07年01-03与08年01-03同期对比看同期增长率.请问应该怎么写SQL语句?

在线等高手回答!
3 回复
#2
心情如画2008-07-03 11:40
不存在没高手啊!
自己顶一下
#3
flatter2008-07-17 16:39
怎么还没上呢
#4
happynight2008-07-18 11:31
根据你给的数据 表设计如下,有出入请自行修订:
Create Table #ls1(日期 Varchar(10),销售额 numeric(9,2))

INSERT INTO #ls1 Values('2007-01',200)
INSERT INTO #ls1 Values('2007-02',300)
INSERT INTO #ls1 Values('2007-03',400)

INSERT INTO #ls1 Values('2008-01',300)
INSERT INTO #ls1 Values('2008-02',500)
INSERT INTO #ls1 Values('2008-03',700)


--SELECT * FROM #ls1

SELECT A.日期,A.销售额,B.销售额,(B.销售额-A.销售额)/A.销售额 增长率
FROM
  (SELECT *,LEFT(日期,4) 年份,RIGHT(日期,2) 月份 FROM #ls1 WHERE LEFT(日期,4)=2007) A
INNER JOIN
  (SELECT *,LEFT(日期,4) 年份,RIGHT(日期,2) 月份 FROM #ls1 WHERE LEFT(日期,4)=2008) B
ON  A.月份=B.月份

DROP TABLE #ls1
1