分步法实现复杂查询(基本不用SQL语句)
时 间:2014-06-24 17:29:56
作 者:半夜罗 ID:36948 城市:成都
摘 要:不用SQL语句,利用设计视图实现复杂查询。
正 文:
SQL语句说起来不难,但象我这样连英文字母都写不好的人来说还是有一定的难度。所以一般查询设计都是在设计视图中完成。设计视图中要设计出复杂查询,是不可能的。所以我想能不能用比较容易的方法呢?答案是肯定的。只用一个简单的连接单词 “union” ,即可实现。其实我连“union”是什么意思都不知道。但经过听一些视频总结,此法还行。
查询1
Select "累计" AS 日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.小组;
查询2
Select 记录表.日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.日期, 记录表.小组;
Select "累计" AS 日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.小组
UNION
Select 记录表.日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.日期, 记录表.小组;
通过向导建立交叉表查询 查询4
TRANSFORM Sum(a.数据) AS 数据
Select a.日期, Sum(a.数据) AS 合计
FROM 查询3 AS a
GROUP BY a.日期
PIVOT a.小组;
将查询4中的红色部分用查询3的代码替换 查询5
TRANSFORM Sum(a.数据) AS 数据
Select a.日期, Sum(a.数据) AS 合计
FROM (Select "累计" AS 日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.小组
UNION Select 记录表.日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.日期, 记录表.小组
) AS a
GROUP BY a.日期
PIVOT a.小组;
将查询5中的绿色部分替换,目的是能按日期排序 查询6
TRANSFORM Sum(a.数据) AS 数据
Select Format(a.[日期],"yyyy/mm/dd") AS 日期, Sum(a.数据) AS 合计
FROM (Select "累计" AS 日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.小组
UNION
Select 记录表.日期, 记录表.小组, Sum(记录表.数据) AS 数据
FROM 记录表
GROUP BY 记录表.日期, 记录表.小组
) AS a
GROUP BY a.日期
PIVOT a.小组;

Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)