计算连续两个月同期销量

ketty_liang 2005-12-15 10:19:49
我有一个销量表
id date name number
1 11-1 中华 1
2 11-2 摩拉 1
3 11-3 中华 1
......


100 12-20 中华 1
101 12-21 摩拉 1
...

如此的表格,我想查询到12月21日为止,上月同期到本月同期的销量,即计算11月1-12月1的销量,11月2-12月2的销量,....一直计算出11月21-12月21的销量,列出如下结果:

中华 11月1-12月1销量
中华 11月2-12月2销量
....


中华 11月21-12月21销量

请问怎样编写程序???各位高手请帮帮忙!!!!

在线等待!!!



...全文
106 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
imcomets 2005-12-19
  • 打赏
  • 举报
回复
好复杂。
wwwwb 2005-12-15
  • 打赏
  • 举报
回复
SELECT a.name, a.date&"-"&dateadd('m',1,a.date)&"销量" AS nr, (select sum(number) from qqll b WHERE a.[name]=b.[name] and b.[date] between a.[date] and
dateadd('m',1,a.[date])) AS hj
FROM qqll AS a
ORDER BY [name], [date];
wwwwb 2005-12-15
  • 打赏
  • 举报
回复
or
SELECT a.name, a.date, dateadd('m',1,a.date),
(select sum(number) from qqll b WHERE a.[name]=b.[name] and format(b.[date],'yyyy-mm-dd') between format(a.[date],'yyyy-mm-dd') and format(dateadd('m',1,a.[date]),'yyyy-mm-dd'))
FROM qqll AS a
ORDER BY [name], [date];
wwwwb 2005-12-15
  • 打赏
  • 举报
回复
改了一下:
SELECT name, date, dd, sum(number) AS sl, date&"-"&dd&"销量" AS nr
FROM [SELECT a.name, a.date, dateadd('m',1,a.[date]) as dd, b.number
FROM qqll AS b INNER JOIN qqll AS a ON (a.[name]=b.[name]) AND (b.[date] between a.[date] and dateadd('m',1,a.[date]))
ORDER BY a.name, a.date]. AS [%$##@_Alias]
GROUP BY name, date, dd;
wwwwb 2005-12-15
  • 打赏
  • 举报
回复
select name,sum(number) from tt where
[date] between
[date] and dateadd('m',1,[date])
group by name

7,713

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧