2016-08-12 27 views
-1

私は左の結合クエリを作成し、このエラーを取得しようとしています。誰かが間違っていることを教えてもらえますか?Ora-00903無効なテーブル名

SELECT incid, 
    db_name, 
    snap_time 
FROM 
    (SELECT incid, 
    db_name, 
    (TRUNC(MAX(optime),'MI')-TO_DATE('1970-01-01', 'YYYY-MM-DD')) * 86400000 SNAP_TIME 
    FROM ticket_details s1 
    WHERE optime BETWEEN sysdate-1 AND sysdate +6 
    AND upper(db_name) = upper('EXPP') 
    GROUP BY incid, 
    db_name 
) s1 
LEFT OUTER JOIN 
SELECT snap_time , 
    instance_name, 
    cpu_used 
FROM 
    (SELECT (SNAP_TIME-TO_DATE('1970-01-01', 'YYYY-MM-DD')) * 86400000 SNAP_TIME, 
    instance_name, 
    ROUND((
    CASE 'CPU_USED' 
     WHEN 'CPU_USED' 
     THEN CPU_USED 
     WHEN 'REDO' 
     THEN REDO 
     WHEN 'TPS' 
     THEN TPS 
     WHEN 'PROCESS_USED' 
     THEN PROCESS_USED 
     WHEN 'LOGONS_PER_SEC' 
     THEN LOGONS_PER_SEC 
     WHEN 'LOGICAL_READS_MBPS' 
     THEN LOGICAL_READS_MBPS 
     WHEN 'LFS' 
     THEN LFS 
     WHEN 'LFPW' 
     THEN LFPW 
     WHEN 'SINGLE_BLOCK_READ' 
     THEN SINGLE_BLOCK_READ 
     WHEN 'IOPS_MBPS' 
     THEN IOPS_MBPS 
     WHEN 'PHY_READS' 
     THEN PHY_READS 
     WHEN 'PHY_WRITES' 
     THEN PHY_WRITES 
     WHEN 'STREAMS_IO' 
     THEN STREAMS_IO 
     WHEN 'RMAN_IO' 
     THEN RMAN_IO 
     WHEN 'NETWORK' 
     THEN NETWORK 
     WHEN 'CONCURRENCY_AAS' 
     THEN CONCURRENCY_AAS 
     WHEN 'COMMIT_AAS' 
     THEN COMMIT_AAS 
     WHEN 'USER_IO_AAS' 
     THEN USER_IO_AAS 
     WHEN 'SYSTEM_IO_AAS' 
     THEN SYSTEM_IO_AAS 
     WHEN 'OTHERS_AAS' 
     THEN OTHERS_AAS 
     WHEN 'CONFIG_AAS' 
     THEN CONFIG_AAS 
     WHEN 'APP_AAS' 
     THEN APP_AAS 
     WHEN 'CLUSTER_AAS' 
     THEN CLUSTER_AAS 
     WHEN 'NETWORK_AAS' 
     THEN NETWORK_AAS 
     WHEN 'ADMIN_AAS' 
     THEN ADMIN_AAS 
     WHEN 'TOTAL_AAS' 
     THEN TOTAL_AAS 
     WHEN 'CPU_AAS' 
     THEN CPU_AAS 
     WHEN 'USER_CALLS' 
     THEN USER_CALLS 
     WHEN 'PGA_USED' 
     THEN PGA_USED 
     ELSE NULL 
    END), 2) CPU_USED 
    FROM THIRDEYE_ORACLE_METRIC_HIST 
) s2 ON s1.db_name = s2.instance_name 
AND s1.snap_time  = s2.snap_time 

答えて

1

私は左に参加した後、あなたは括弧が欠落していると思う:

SELECT incid, 
    db_name, 
    snap_time 
FROM 
    (SELECT incid, 
    db_name, 
    (TRUNC(MAX(optime),'MI')-TO_DATE('1970-01-01', 'YYYY-MM-DD')) * 86400000 SNAP_TIME 
    FROM ticket_details s1 
    WHERE optime BETWEEN sysdate-1 AND sysdate +6 
    AND upper(db_name) = upper('EXPP') 
    GROUP BY incid, 
    db_name 
) s1 
LEFT OUTER JOIN 
(-- This Parenthesis 
SELECT snap_time , 
    instance_name, 
    cpu_used 
FROM 
    (SELECT (SNAP_TIME-TO_DATE('1970-01-01', 'YYYY-MM-DD')) * 86400000 SNAP_TIME, 
    instance_name, 
    ROUND((
    CASE 'CPU_USED' 
     WHEN 'CPU_USED' 
     THEN CPU_USED 
     WHEN 'REDO' 
     THEN REDO 
     WHEN 'TPS' 
     THEN TPS 
     WHEN 'PROCESS_USED' 
     THEN PROCESS_USED 
     WHEN 'LOGONS_PER_SEC' 
     THEN LOGONS_PER_SEC 
     WHEN 'LOGICAL_READS_MBPS' 
     THEN LOGICAL_READS_MBPS 
     WHEN 'LFS' 
     THEN LFS 
     WHEN 'LFPW' 
     THEN LFPW 
     WHEN 'SINGLE_BLOCK_READ' 
     THEN SINGLE_BLOCK_READ 
     WHEN 'IOPS_MBPS' 
     THEN IOPS_MBPS 
     WHEN 'PHY_READS' 
     THEN PHY_READS 
     WHEN 'PHY_WRITES' 
     THEN PHY_WRITES 
     WHEN 'STREAMS_IO' 
     THEN STREAMS_IO 
     WHEN 'RMAN_IO' 
     THEN RMAN_IO 
     WHEN 'NETWORK' 
     THEN NETWORK 
     WHEN 'CONCURRENCY_AAS' 
     THEN CONCURRENCY_AAS 
     WHEN 'COMMIT_AAS' 
     THEN COMMIT_AAS 
     WHEN 'USER_IO_AAS' 
     THEN USER_IO_AAS 
     WHEN 'SYSTEM_IO_AAS' 
     THEN SYSTEM_IO_AAS 
     WHEN 'OTHERS_AAS' 
     THEN OTHERS_AAS 
     WHEN 'CONFIG_AAS' 
     THEN CONFIG_AAS 
     WHEN 'APP_AAS' 
     THEN APP_AAS 
     WHEN 'CLUSTER_AAS' 
     THEN CLUSTER_AAS 
     WHEN 'NETWORK_AAS' 
     THEN NETWORK_AAS 
     WHEN 'ADMIN_AAS' 
     THEN ADMIN_AAS 
     WHEN 'TOTAL_AAS' 
     THEN TOTAL_AAS 
     WHEN 'CPU_AAS' 
     THEN CPU_AAS 
     WHEN 'USER_CALLS' 
     THEN USER_CALLS 
     WHEN 'PGA_USED' 
     THEN PGA_USED 
     ELSE NULL 
    END), 2) CPU_USED 
    FROM THIRDEYE_ORACLE_METRIC_HIST 
) 
)-- This one too 
    s2 ON s1.db_name = s2.instance_name 
AND s1.snap_time  = s2.snap_time 
1
... 
LEFT OUTER JOIN 
SELECT snap_time , 
... 

あなたがここに

をいくつかの括弧を必要とします
関連する問題