所以我只能通过使用预先配置的系统DSN的Microsfot Query访问Oracle数据库,我需要从中选择多行数据,这些数据都只有单列不同。我所指的表看起来是这样的:
门票
ID,时间,LastGroup,日志
1,1234,foo,bar
2,2345,fob,bat更新
ID,更新
1,foo
1,酒吧
1,foobar
2,foo
2,酒吧Goups
ID,组
1,你
1,我 1,我们
2,有人
2,任何人
我正在尝试通过ID从所有3个表中获取数据。日志字段是CLOB类型,IT存储了大量原始文本,以避免多次返回我想要合并值的行,这些行只能由单列进行区分,以获得类似的内容:
ID,时间,日志,更新,群组
1,1234,bar,“foo; bar; foobar”,“you; me; as”
为了达到这个目的,我尝试使用LISTAGG函数,但Microsoft Query在SELECT列列表后给了我一个“没想到'GROUP'。”错误。
LISTAGG部分选择如下:
LISTAGG(Updates.Update, '; ') WITHIN GROUP (ORDER BY Updates.Update) "Updates"
任何人都知道甚至可以在MS Query中使用此功能吗?如果是这样,怎么样?也许我的方法错了?我会感激任何建议。
PS。我正在使用oracle 11g驱动程序,因此应支持此功能。