表table :id,money(消费金额),point(积分),shuliang (购买数量) datime(购买日)
我现在想查询某个id在几月到几月之间的消费情况和总的消费情况。在一条sql中写出来、
如:id,money(消费金额),point(积分),shuliang (购买数量) datime(日期)
50 200 50 10 2001-1-1
50 100 25 5 2003-2-2
20 300 75 15 2001-1-1
我现在要查询id50的2001-12-30到2003-12-30的消费情况要得到的情况是:
id,money,point,shuliang datime(日期)sum(point) sum(money) sum(shuliang
50 200 50 10 2001-1-1 75 300 15
50 100 25 5 2003-2-2 75 300 15
这个怎么写??????请高手解答
我现在想查询某个id在几月到几月之间的消费情况和总的消费情况。在一条sql中写出来、
如:id,money(消费金额),point(积分),shuliang (购买数量) datime(日期)
50 200 50 10 2001-1-1
50 100 25 5 2003-2-2
20 300 75 15 2001-1-1
我现在要查询id50的2001-12-30到2003-12-30的消费情况要得到的情况是:
id,money,point,shuliang datime(日期)sum(point) sum(money) sum(shuliang
50 200 50 10 2001-1-1 75 300 15
50 100 25 5 2003-2-2 75 300 15
这个怎么写??????请高手解答
解决方案 »
- 求一个业务员删除统计存储过程
- 求一列变多列而且要并记录的SQL 指。
- SQLSERVER2005能停掉哪些服务
- SQL安装过程中的问题,请大家指教,在线等!急!
- 200分求救,一条delete语句
- 关于SQL2000外联接查询的问题
- 数据库连接问题!
- 你未必会的sql语句,用sql语句对如下信息进行排序
- 两台Server2000,各有一个数据库(DBSvr1,DBSvr2),想把DBSvr1里表的数据插入DBSvr2表里,用VB,有好的意见吗?
- SqlServer7.0 + Client/Server 问题
- 用sql语句实现月排名和累计排名在一张表中显示?
- 两个表进行表连接查询,索引应该如何建,效率会更高一些,谢谢!
declare @t table(id int,money int,point int,shuliang int, datime datetime)
insert @t
select 50, 200, 50, 10, '2001-1-1' union all
select 50, 100, 25, 5 , '2003-2-2' union all
select 20, 300, 75, 15, '2001-1-1'declare @id int,@begin datetime,@end datetime
set @id = 50
set @begin = '2001-1-1'
set @end = '2003-12-30'
SELECT a.*,b.sum_point,b.sum_money,b.sum_shuliang
FROM @t AS a INNER JOIN
(select id,
sum(point) as sum_point,sum(money) as sum_money,sum(shuliang) as sum_shuliang
from @t where id = @id AND datime between @begin and @end group by id) AS b
ON a.id = b.id WHERE a.id = @id AND a.datime between @begin and @end/*结果
id money point shuliang datime sum_point sum_money sum_shuliang
50 200 50 10 2001-1-1 75 300 15
50 100 25 5 2003-2-2 75 300 15
*/