sql中的聚合函数

时间:2014-03-20 05:44:39

标签: sql oracle

我遇到2个架构的问题,两个架构都在不同的数据库中,并且两者都具有相同的环境配置。但它为xmlagg函数提供了不同的结果。

Inner Query在两个模式中给出相同的结果,但外部查询在不同的模式中给出不同的结果。请帮我解决这个问题。

外部查询:

SELECT RTRIM(XMLAGG(XMLELEMENT(E, EMAIL || ',')).EXTRACT('//text()'), ',') AS RECEIVERID
  FROM ( :INNERQUERY )

架构1结果:

1   yuan@mitachi-sh.com,wu@mitachi-sh.com,gaojizhong@mitachi-sh.com

架构2结果:

1   empty or null

内部查询:

SELECT DISTINCT (EMAIL) AS EMAIL
          FROM RDT_USER
         WHERE ORGID IN
               (select party2id
                  from rdt_tr
                 where id in
                       (select trid from rdt_trcode where code = 'SAE0279'))
           AND STATUS IN ('3', '2') GROUP BY EMAIL

结果:

1   yuan@mitachi-sh.com
2   wu@mitachi-sh.com
3   gaojizhong@mitachi-sh.com

两种模式中的环境相同:

1   Oracle Database 11g Release 11.2.0.1.0 - 64bit Production
2   PL/SQL Release 11.2.0.1.0 - Production
3   "CORE   11.2.0.1.0  Production"
4   TNS for Linux: Version 11.2.0.1.0 - Production
5   NLSRTL Version 11.2.0.1.0 - Production

0 个答案:

没有答案