MS Access将两行转换并汇总为具有唯一名称的列

时间:2018-02-09 17:12:39

标签: sql ms-access ms-access-2007 pivot-table dynamic-columns

我真的在努力改变'或者转动这个简单的两列表,有没有办法?

到目前为止我找到的所有解决方案(pivot / transform / crosstab等)都要求数据具有某种第三字段索引号以便创建列名。在我的情况下,每个Itemcode可以包含任意数量的Itemimage,而itemimage有时适用于多个Itemcode。通常,itemimage的数量将少于20,但有成千上万的{{​​1}}。

转换表1:

Itemcode

进入这样一个表:

Itemcode    Itemimage
12345       image-a.jpg
12345       image-b.jpg
23456       image-c.jpg
23456       image-d.jpg
23456       image-a.jpg
34567       image-e.jpg
45678       image-a.jpg

离我最近的工作是

Itemcode    Itemimage1  Itemimage2  Itemimage3
12345       image-a.jpg image-b.jpg null
23456       image-c.jpg image-d.jpg image-a.jpg
34567       image-e.jpg null        null
45678       image-a.jpg null        null

但这需要在Table1中创建[Number]列来创建列的增量索引号。

第3天工作...开始认为无法使用单个查询完成并且需要Visual Basic宏来排序为Itemcode顺序,然后创建一个读出到新表的数组。真的需要一些帮助,因为我从未在VB中编程。

注意:结果表的顺序与Table1的顺序非常重要。这是因为Table1中的数据按照第三方提供给我的特定顺序排列。上面的示例数据仅显示了Itemimage字段,但是我有类似的数据,其中Itemdescription包含句子,其中必须保留序列以保持其语法意义不变。

0 个答案:

没有答案