0

我正在尝试在访问中创建一个宏(或查询),它将对列中重复值的数量求和,并将这些值保留在一个新表中,旁边有重复的数量。

因此,例如,我将有一个包含 10 个值的无序列,6 个是“选项 1”,3 个是“选项 2”,1 是“选项 3”。

Option 1
Option 2
Option 3
Option 1
Option 1
Option 2
Option 1
Option 2
Option 1
Option 1

我希望能够将其解析为 3 x 2 表:

Option 1 | 6
Option 2 | 3
Option 3 | 1

在这种情况下,数据是无序的,但我可以想象在查询中对数据进行排序。我希望对多个列执行此操作。有没有办法在 Visual Basic 编辑器中进行编程以实现这一点?

4

1 回答 1

0

假设您定义了源表和目标表,我会执行这样的查询:

INSERT INTO TargetTbl
SELECT OptionCol, COUNT(*)
  FROM SourceTbl
GROUP BY OptionCol

如果您只想插入重复项(我在 Access 中经常这样做),请添加一个HAVING子句:

INSERT INTO TargetTbl
SELECT OptionCol, COUNT(*)
  FROM SourceTbl
GROUP BY OptionCol
HAVING COUNT(*) > 1
于 2013-06-21T23:48:05.527 回答