0

我试图通过with在 oracle sql 中使用子句来简化选择语句。下面是代码;当我运行它时,首先它会打开一个弹出窗口,上面写着“您的数据库连接已被重置。任何待处理的事务或会话状态都已丢失。”。然后它开始运行,但最后它给出消息“没有更多数据可以从套接字读取”。

我能够成功运行其他查询(也使用 with 子句)。但是,这个不起作用。你能帮我解决问题吗?

提前致谢。

WITH M AS
  (
  SELECT *
  FROM MASTER_REPORT_SOURCE_TABLE
  )
  ,
  POL_CUST AS
  (
  SELECT
    BRANCHCODE
    ,COUNT(POLID) NUMBER_OF_POLICIES
    ,COUNT(DISTINCT CUST_ID) NUMBER_OF_CUSTOMERS
  FROM M
  GROUP BY BRANCHCODE
  )
  ,
  E AS
  (
  SELECT
    BRANCHCODE
    ,COUNT(DISTINCT CUST_ID) CUST_EMAIL_EXIST
  FROM M
  WHERE CUST_EMAIL_EXIST = 1
  GROUP BY BRANCHCODE
  )
SELECT
  POL_CUST.BRANCHCODE
  ,POL_CUST.NUMBER_OF_POLICIES
  ,POL_CUST.NUMBER_OF_CUSTOMERS
  ,E.CUST_EMAIL_EXIST
FROM POL_CUST, E
WHERE POL_CUST.BRANCHCODE = E.BRANCHCODE
4

0 回答 0