Microsoft Access查询按ID组合多个记录

时间:2016-03-02 21:35:20

标签: ms-access

我在Windows 7 Enterprise上使用Access 2007 如果这已被覆盖,我道歉,但我找不到它。 在我有一个表:

ID ..... info .... place ....因为

1 ..... abc ...家.....冰箱

1 .... abc ... work ....... desk

1 ..... abc ....玩.......口袋

我想查询结果是

Id .. info .... as1 .... as1 ...... as2 ..... as2 .... as3 ... as3

1 .... abc ...家...冰箱......工作......桌子......玩......口袋

ID的结果数量可能会有所不同,“Place and because”可能不一样。

非常感谢任何帮助 提前致谢

1 个答案:

答案 0 :(得分:0)

首先,您需要一个唯一标识每一行的列:

ID    info    place    because    id
1     abc     home     fridge     1
1     abc     work     desk       2
1     abc     play     pockets    3

然后,联合查询将所有记录放在一列中:

ID    info    rowID    key       value     name
1     abc     1        place     home      as_1_place
1     abc     1        because   fridge    as_1_because
1     abc     2        place     work      as_2_place
1     abc     2        because   desk      as_2_because
1     abc     3        place     play      as_3_place
1     abc     3        because   pockets   as_3_because

然后,您需要在名称字段

上进行交叉表查询
ID    info    as1_place    as1_because    as2_place    as2_because  as3_place  as3_because

我将很快详细说明。