改成 union all
用union的话,会自动进行排序操作。

解决方案 »

  1.   

    ??
    SELECT  RP_ID  REQ_ID,  CLOSED,  USER_ID,  TO_CHAR(RP_TIME,    
                               'YYYY-MM-DD  HH24:MI')  REQ_DATE,  USER_NAME,  LOCATION,    
                               RP_STATUS  REQ_STATUS,  LOGON_ID,  SN,  RP_TYPE  AS  REQ_TYPE,    
                               USER_DEPT,  USER_TEL,  CLOSE_TIME  AS  REQ_CLOSE_DATE,    
                               '1'  AS  REQ_RANK,  RP_PROBLEM  AS  REQ_REASON  
                   FROM  C_REPAIR_INFO  
                   UNION all  
                   SELECT  SVC_ID  REQ_ID,  CLOSED,  USER_ID,  TO_CHAR(APPLY_DATE,    
                               'YYYY-MM-DD  HH24:MI')  REQ_DATE,  USER_NAME,  LOCATION,    
                               SVC_STATUS  REQ_STATUS,  LOGON_ID,  SN,  SVC_TYPE  AS  REQ_TYPE,    
                               USER_DEPT,  USER_TEL,  CLOSE_DATE  AS  REQ_CLOSE_DATE,    
                               SVC_RANK  AS  REQ_RANK,  SVC_REQUEST  AS  REQ_REASON  
                   FROM  C_SERVICE_INFO
      

  2.   

    但是如果改成union all的话,他的需求就变化了. union会去掉重复的值,而union all不会.楼主,C_REPAIR_INFO和C_SERVICE_INFO都是表吗?还是视图?
      

  3.   


    只有这两个查询的结果集中所有的字段都重复的行,才会删除重复的。
    只能用union或union all