ACCESS交叉表(行列互换)
来源:互联网 发布:2016进出口数据 编辑:程序博客网 时间:2024/06/12 20:28
用于创建交叉表查询?(交叉表查询:这种查询用于对记录计算总计、平均值、计数或其他类型总计,然后按照两类信息对结果进行分组:一组信息分布在数据表的左侧,另一组分布在数据表的顶端。)。
语法
TRANSFORM aggfunction
selectstatement
PIVOT pivotfield [IN (value1[, value2[, ...]])]
TRANSFORM 语句包含以下部分:
说明
使用交叉表查询汇总数据时,从指定的字段或表达式中选择值作为列标题,以便可以用更紧凑的格式查看数据(而不是使用选择查询?(选择查询:就表中存储的数据提出问题,然后在不更改数据的情况下以数据表的形式返回一个结果集。))。
TRANSFORM 是可选的,但如果包括此语句,则是 SQL 字符串?(SQL 字符串/语句:用于定义 SQL 命令(如 SELECT、UPDATE 或 DELETE)的表达式,可以包含子句(如 WHERE 和 ORDER BY)。SQL 字符串/语句通常用在查询和聚合函数中。)中的第一个语句。它在指定用作行标题的字段的 SELECT 语句以及指定行分组的 GROUP BY 子句之前。您可以选择包括其他子句,例如指定附加选择或排序条件的 WHERE 子句。您还可以在交叉表查询中使用子查询?(子查询:在另一个选择查询或操作查询内的 SQL SELECT 语句。)作为谓词(尤其是 WHERE 子句中的谓词)。
pivotfield 中返回的值用作查询结果集中的列标题。例如,在交叉表查询中对月销售额的销售数字进行透视时,会创建 12 个列。可以将 pivotfield 限制为使用可选的 IN 子句中所列的固定值(value1, value2)来创建标题。您还可以包括数据不存在的固定值来创建附加列。
一表aTable,字段如下:
aVer,aCode,Price
12 F01 10
12 F02 3
.....
共有记录从F01顺序到F80,aVer都是一样的'12',我用交叉查询将纵向转成一行横向
Transform sum(price) select aVer from aTable group by aVer Pivot aCode
可以得到如下一行记录:
aVer F01 F02 F03.....F80
Transform sum(price) select aVer from aTable group by aVer Pivot iif(len(aCode)=3,space(1)+aCode,aCode)
- ACCESS交叉表(行列互换)
- access行列互换
- oracle 动态交叉查询 行列互换 oracle动态交叉表
- 巧用参数实现交叉表行列互换
- MS SQLServer 交叉报表(行列互换)
- mysql表行列互换
- mysql表行列互换
- SQL(行列互换)
- 交叉表查询(普通行列转换)
- 行列转换 交叉表
- 行列转换 交叉表
- 行列转换 交叉表
- 行列转换交叉表
- 交叉表行列转换
- 行列互换
- 行列互换
- 行列互换
- 行列互换
- 特征脸(Eigenface)理论基础-PCA(主成分分析法)
- 用友NC房地产行业V5.75助力商业地产
- [学习共享] shell 十三問?
- shell编程join
- 函数指针
- ACCESS交叉表(行列互换)
- A的href和onclick
- MIT:算法导论——11.扩充的数据结构、动态有序统计和区间树
- Histogram intersection(直方图交叉核,Pyramid Match Kernel)
- maven cargo tomcat7 远程部署
- gcc 的ar命令
- 转载:Oracle创建表空间、创建用户以及授权、查看权限
- 45_leetcode_SubsetsII
- 矩阵求逆的快速算法