我在MS ACCESS 2010中面临以下问题。
我有一个(或很多)表A看起来像这样:
F1 | F2 | F3 | ... | F?
-------------------------------
| B005 | B005 | ... | B345
| C235 | C255 | ... | C235
A123 | 12.3 | 27.4 | ... | 87.0
A276 | 34.8 | 7.2 | ... | 42.0
... | ... | ... | ... | ...
A876 | 91.2 | 13.3 | ... | 0.1
所以顶部有两行,左边有一列包含键值。
我需要实现这样的数据表示(更规范化?):
K1 | K2 | K3 | Data
-------------------------
A123 | B005 | C235 | 12.3
A123 | B005 | B255 | 27.4
A123 | B345 | C235 | 87.0
A276 | B005 | C235 | 34.8
. . .
A876 | B345 | C235 | 0.1
搜索解决方案提出了UNPIVOT(不能与ACCESS一起使用?)和许多UNIONs(用于模拟UNPIVOT)。 然而,问题是表A中的列总数及其名称不是事先知道的(或者对于不同的表而言不是常量作为输入)。 我怎么处理这个?
感谢您的建议。