求一条SQL语句的写法,在线

z_liming 2004-07-30 11:12:08
表为历年各月销售额 结构 年份,月份,销售额
求多年平均的各季销售额
其实就是先合计再平均。如何在一条语句中实现啊?
...全文
195 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
z_liming 2004-08-01
  • 打赏
  • 举报
回复
是啊,实在等不到答案,我已改用其它方法了。谢谢关心,来者有分
落伍者 2004-07-31
  • 打赏
  • 举报
回复
select ((month-1) \3)+1 as 季度, sum(销售额)*3/count(年) as 多年平均的各季销售额 From tableName
group by ((month-1) \3)

不过这样做有个问题,就是每年的1-12月的销售记录必须都有
其实为什么要一句话实现呢?
lgs666 2004-07-31
  • 打赏
  • 举报
回复
按年分组,然后判断1~3月,4~6月等,用sum函数统计就行了
z_liming 2004-07-30
  • 打赏
  • 举报
回复
注意表结构是各月数据啊
z_liming 2004-07-30
  • 打赏
  • 举报
回复
ACCESS的,楼上的行者,我说的是一条语句啊
frankwong 2004-07-30
  • 打赏
  • 举报
回复
什么数据库?
xayzmb 2004-07-30
  • 打赏
  • 举报
回复
求各年的季平均销售额:
select 年,avg(季) as 各季度销售额
from tableName
group by 年;

求所有年的季平均销售额:
select avg(季)
from tableName;
z_liming 2004-07-30
  • 打赏
  • 举报
回复
一天了,俺还等不到答案啊!绝望ing
z_liming 2004-07-30
  • 打赏
  • 举报
回复
好象去掉后还是指的平均吧,不过是所有数据的平均,可季度的合计呢?
northwolves 2004-07-30
  • 打赏
  • 举报
回复
去掉jtkk 代码中 GROUP BY year ,ORDER BY year试试
z_liming 2004-07-30
  • 打赏
  • 举报
回复
楼上,我的表达可能有问题,我是想得到累年平均的季销售额,也就是结果只有四个值,多年平均的
adamcn 2004-07-30
  • 打赏
  • 举报
回复
建议你先求多年各个季度销售额的合计,得到的结果除以年数就是平均值拉,如果想一个sql语句求出所有的合计,就用union,类似楼上的写法
jtkkjtkk 2004-07-30
  • 打赏
  • 举报
回复
以下语句在ACCESS中通过:

SELECT year, "一季度" as 季度,Avg(total) AS avgtotal
FROM tb
where month in(1,2,3)
GROUP BY year
union
SELECT year, "二季度" ,Avg(total)
FROM tb
where month in (4,5,6)
GROUP BY year
union
SELECT year, "三季度" as 季度,Avg(total)
FROM tb
where month in (7,8,9)
GROUP BY year
UNION
SELECT year, "四季度" ,Avg(total)
FROM tb
where month in (10,11,12)
GROUP BY year ORDER BY year

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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