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

有困难请求支援

paul3292 发布于 2007-03-13 13:07, 694 次点击
有表1
日期 销售项目 销售金额
20070101 软件 100
20070102 汽车 200
20070103 汽车 200
20070103 汽车 200
20070122 汽车 200
20070121 汽车 200

需要通过sql完成
有一个日期列,有销售项目,并且有销售合计,变态的是日期项目是有1-31天,如果当天没有销售数据,那么就为空
日期 销售项目 销售金额合计
1 软件 100
2 汽车 200
3 汽车 400
4
5
直到31
这个应该怎么样完成,起来方便些呢?

[此贴子已经被作者于2007-3-13 13:14:51编辑过]

7 回复
#2
paul32922007-03-13 13:21
我现在的解决方法是,新建一个表这个表只有一列day,里面存着的数据是从1-31天。
然后用这个表和表1进行左连接,取day的值。

[此贴子已经被作者于2007-3-13 13:25:33编辑过]

#3
棉花糖ONE2007-03-13 13:25
你的方法对了,就是那么办
#4
cyyu_ryh2007-03-13 13:27

同意
呵呵

#5
paul32922007-03-13 13:55
是吗?
哦了,就这么办了!
#6
bygg2007-03-14 09:05
要保持没有数据也显示,只有进行填充..
#7
laoqiu2007-03-14 21:13
回复:(paul3292)有困难请求支援
左连接???
用零来填充?

能用语句 来举例说明吗
我有类似的问题 拜托
#8
棉花糖ONE2007-03-15 11:54
select * from table a right join
(select 1 as id union all
select 2 as id union all
select 3 as id ) b
on a.id=b.id
类似这样的,括号的东西可以继续加,保证表结构一样就行
1