如何在 Microsoft Access 中透视表?

Posted

技术标签:

【中文标题】如何在 Microsoft Access 中透视表?【英文标题】:How Can I Pivot a Table in Microsoft Access? 【发布时间】:2021-12-29 01:34:49 【问题描述】:

以前可以在旧版本的 Microsoft Access (Access 2010) 中透视表。数据透视表的选项现在似乎已被删除。此外,MS Access 似乎不支持 SQL PIVOT 运算符。那么,如果我希望在 Access 数据库中透视我的数据,我有哪些选择?

具体来说,我的问题是: 我的 Access 数据库中有一个“Contacts”表,其中包含我的联系人的姓名、地址等,除了所有电话号码都存储在单独的“PhoneNumber”表中。这是因为我想对每个数字进行描述。所以PhoneNumbers表中有四列:

    NumberID(主键) 联系人 ID(外键) 说明(例如:“手机”、“家庭”、“工作”) 电话号码

这两个表在 contactID 上内联。

我希望显示“Contacts”表中的所有记录以及附加到此数据集的“PhoneNumbers”表中的“描述”字段。 p>

'PhoneNumbers' 表的 'PhoneNumber' 字段中的条目,我希望在描述字段中显示为记录条目。这可以使用 SQL PIVOT 并使用 MAX(PhoneNumber) 作为聚合函数来完成 - 但是,MS Access 中似乎不支持 PIVOT。我对吗?如果是这样,我怎样才能实现我的目标?

【问题讨论】:

在 Microsoft Access 中,它被称为“交叉表查询”。 【参考方案1】:

MS 从 Access 2013 开始删除了交互式数据透视表和数据透视图。

但是,使用 CROSSTAB 查询可以实现数据透视,现在仍然可以。使用查询设计器并从功能区中选择 CROSSTAB 进行构建,然后切换到 SQL 视图以查看语句语法。构造的 SQL 语句确实使用了 PIVOT 子句。

【讨论】:

以上是关于如何在 Microsoft Access 中透视表?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Excel 中使用带查询的 Access 数据库作为数据透视表

如何在 Microsoft SQL Server 中制作非数值表的数据透视表?

合并数据透视表中的两列

如何查看具有实际列值的数据透视表,例如在 excel 中的访问

Microsoft Access 中如何删除多个表的内容?

使用 access 和 mysql 时,有没有办法查看哪些查询用于生成数据透视表? [复制]