1

我在一张表上有一个数据透视表,它来自另一张表上的 Microsoft Query MySQL 数据馈送。

考虑来自数据馈送的信息是这样的:

date  |  order  |  SKU  |  Quantity
-----------------------------------
5/1/14  123456    11111     1
5/1/14  234567    22222     1
5/1/14  456789    33333     2
5/2/14  987654    44444     1
5/2/14  876543    55555     3

当我为此信息制作数据透视表时,我使用行标签的日期。然后我想计算当天的 SKU 数量,并添加当天的 SKU 数量。因此,我将 SKU 列拖到值部分并确保选择了 COUNT。然后我将 Quantity 列拖到 value 部分,当我选择 SUM 时,我的值最终为零。请参阅下文了解正在发生的事情:

Row Labels  |  Count of SKUs  |  Sum of Quantity
------------------------------------------------
5/1/14              3            0
5/2/14              2            0

数量总和列不应为零,5/1 应为 4,5/2 应为 4。我以前从未遇到过这个问题,我假设它与链接到 MySQL 查询的数据馈送有关。

我试图将数量列中的数字更改为数字格式,但没有成功。我完全不知道是什么原因造成的,我假设这可能是我忽略的一些简单的事情。但我希望其他人遇到过这个问题和/或有解决方案。

请帮忙!

提前致谢!

-安东尼

解决方案(下):

MySQL 数据库表中 Quantity 列的数据类型为 VARCHAR。我将数据类型更改为 INT 并刷新了数据馈送,现在数据透视表工作正常。

4

3 回答 3

1

我猜您的查询将这些数字作为文本返回。如果您在前面带有撇号的单元格中输入三个 1,以向 Excel 表示您希望它们被视为字符串,然后在该范围内使用 SUM() 它将产生零。考虑将您的列转换为数字。

于 2014-05-12T16:21:43.993 回答
1

解决方案是 MySQL 数据库中的“数量”列是 VARCHAR。将列更改为 INT 并刷新数据馈送后,数据透视表工作正常。

于 2014-05-12T16:32:41.497 回答
1

简单的解决方法是:

  • 突出显示您的“数量”列并在“数据”下执行“文本到列”,单击“固定为”并仅将数字分开“完成”。

  • 这将删除您的号码之间不必要的空格。

  • 重新运行数据透视表

于 2015-01-22T20:10:45.857 回答