2016-04-22 44 views
0

次のコードを実行すると、目的の出力が得られます。しかし、オラクルでエラーに直面していますされています ORA-00907:Oracleで以下のエラーに直面Teradataではクエリは動作しますが、Oracleでは動作しません

SELECT NAME 
    FROM STUD 
WHERE ID IN (
       SEL DISTINCT TAB1.ID 
       FROM (
           SEL A.ID 
           , B.SALARY 
          FROM Fr A 
         INNER JOIN PACK B ON A.ID = B.ID 
        ) AS TAB1 
      INNER JOIN (
           SEL A.FRIEND_ID 
           , B.SALARY 
          FROM Fr A 
         INNER JOIN PACK B ON A.FRIEND_ID = B.ID 
        ) AS TAB2 
        ON TAB2.SALARY > TAB1.SALARY 
    ) 
    ; 

SEL代わりのSELECTとして表の別名の使用方法:欠落している右括弧

答えて

1

は、次の2個のエラーを持っていますこのほかのOracle

SELECT NAME 
    FROM STUD 
WHERE ID IN (SELECT DISTINCT TAB1.ID FROM 
(SELECT A.ID , B.SALARY 
FROM 
Fr A 
INNER JOIN 
PACK B 
ON 
A.ID = B.ID) TAB1 
INNER JOIN 
(SELECT A.FRIEND_ID , B.SALARY 
FROM 
Fr A 
INNER JOIN 
PACK B 
ON 
A.FRIEND_ID = B.ID 
) TAB2 
ON 
TAB2.SALARY > TAB1.SALARY 
) 

でサポートされていないASキーワードは、私はあなたが唯一それを使用することを考えると、内側のクエリでDISTINCTを必要としないと思いますIN

関連する問題