4个表,表名和字段如下:goods:商品资料表
字段: id, name (编号,商品名)sale: 销售表
字段: id, p_id, sale_date (编号,仓库ID,销售日期)sale_detail :销售明细表
字段: id, s_id, g_id, price, qty,total,comment (编号,sale表的ID,goods表的ID,销售价格,销售数量,金额,备注)stock: 仓库资料
字段:id, name (编号,名称)现在要查询仓库名称为“城北仓库”,销售日期为“2004-4-1”到 “2004-4-30”的销售情况,按某一商品编号的总销售数量降序排列,要求显示格式如下:商品编号 商品名 销售数量 平均销售价格 销售金额 备注其中销售数量为同一商品编号的总销售数量
平均销售价格为所有销售价格之和的平均值
销售金额为同一商品编号的总金额(销售数量 x 平均销售价格)
请各位大侠不吝赐教(在线等)
字段: id, name (编号,商品名)sale: 销售表
字段: id, p_id, sale_date (编号,仓库ID,销售日期)sale_detail :销售明细表
字段: id, s_id, g_id, price, qty,total,comment (编号,sale表的ID,goods表的ID,销售价格,销售数量,金额,备注)stock: 仓库资料
字段:id, name (编号,名称)现在要查询仓库名称为“城北仓库”,销售日期为“2004-4-1”到 “2004-4-30”的销售情况,按某一商品编号的总销售数量降序排列,要求显示格式如下:商品编号 商品名 销售数量 平均销售价格 销售金额 备注其中销售数量为同一商品编号的总销售数量
平均销售价格为所有销售价格之和的平均值
销售金额为同一商品编号的总金额(销售数量 x 平均销售价格)
请各位大侠不吝赐教(在线等)
解决方案 »
- 请教在VB中SQL长语句该如何处理
- 再次求助一SQL取数语句(还没解决)
- 如何屏蔽Win键、DEL+ATL+CTL、CTL+ESC(XP系统)
- 关于对非活动窗口进行键盘操作!(我一个多月没有解决的问题)
- 全文检索的 SQL 语句怎么写?
- 在VB中如何对,时间进行判断????在线等候,火急!!!!!!!
- 问问题咯...........关于多媒体的(如解即揭!!)
- 关于ACCESS数据库中多媒体文件的存取问题~ 望给源码,分数不够可以再给~
- 请教这个函数代码有何错误?
- 如何修改文本文件的内容?
- 在VB中用“RESTORE DATABASE ”命令对SQL SERVER 数据库进行备份
- 请问Getlasterror如何使用,最好给范例代码,谢谢
goods b on a.g_id=b.id left outer join
sale c on a.s_id=c.id left oute join
stock d on c.p_id =d.id
where d.name='城北仓库' and c.sale_date between '2004-4-1' and '2004-4-30'
group by a.g_id,a.comment\\你試試看,我沒有測試,有問題請告知,再行商討
select goods.[id],sum(qty) as qty_sum,avg(price) as price_avg
from sale
left join stock on sale.p_id=stock.[id]
left join sale_detail on sale.[id]=sale_detail.s_id
left join goods on goods.[id]=sale_detail.g_id
where datediff(d,sale_date,'2004-4-1')<=0 and datediff(d,sale_date,'2004-4-30')>=0
and stock.[name]=N'城北倉庫'
group by goods.[id]
) A
left join goods on goods.[id]=A.[id]
left join sale_detail on g_id=A.[id]
order by qty_sum desc
我按你的SQL语句,为什么还有错呢?请大侠再指教
这样应该可以搞定你的问题
max(b.comment) as '备注' from goods a,sale_detail b,sale c,stock d
where a.id = b.g_id and b.s_id = c.id and d.id = c.p_id and d.name ='城北仓库'
and c.sale_date between '2004-4-1' and '2004-4-30' group by a.id desc
from sale s
left join sale_detail sd on s.id = sd.s_id
left join stock on s.p_id = stock.id
left join goods g on sd.g_id = g.id
where stock.name = '城北倉庫'
未測試
group by g.id, g.name, price, qty*price, sd.comment
再加sort by qty desc