ORA-00907: 突触中缺少右括号

问题描述

qu = 'SELECT DS.TABLESPACE_NAME AS SCHEMA_NAME,SEGMENT_NAME AS TABLE_NAME,ROUND(SUM(DS.BYTES) / (1024 * 1024)) AS MB
        FROM DBA_SEGMENTS DS
       WHERE SEGMENT_NAME IN (SELECT TABLE_NAME
                                FROM DBA_TABLES)
       GROUP BY DS.TABLESPACE_NAME,SEGMENT_NAME;'

当我在突触笔记本中执行此查询时,它显示“缺少右括号”。 有人可以帮忙吗?

解决方法

似乎没问题,除非您需要删除终止分号:

... GROUP BY DS.TABLESPACE_NAME,SEGMENT_NAME;'
                                             ^
                                             |
                                           here

查询本身运行正常:

SQL> SELECT ds.tablespace_name AS schema_name,2         segment_name       AS table_name,3         round(SUM(ds.bytes)/(1024 * 1024)) AS mb
  4  FROM dba_segments ds
  5  WHERE segment_name IN (SELECT table_name
  6                         FROM dba_tables
  7                        )
  8  GROUP BY ds.tablespace_name,9           segment_name;

SCHEMA_NAME                    TABLE_NAME         MB
------------------------------ ---------- ----------
SYSTEM                         OBJ$                2
SYSTEM                         UNDO$               0
SYSTEM                         FILE$               0
<snip>