0

次のコードの構文の問題がわかりません。実行すると、エラーが発生します

ORA-00907: 右括弧がありません

誰でも私の欠陥を指摘できますか?

CREATE OR REPLACE VIEW LATESTAPPLICATIONS AS 
SELECT *
FROM application_history
WHERE entry_time IN
    (SELECT entry_time
    FROM application_history
    GROUP BY application_number; )
ORDER BY entry_number;​

のテーブル定義は次のとおりですapplication_history。理想的には、最新のタイムスタンプを持つアプリケーション番号のみを表示したいと考えています。

 CREATE TABLE  "APPLICATION_HISTORY" 
   (    "ENTRY_NUMBER" NUMBER(28,0), 
"APPLICATION_NUMBER" NUMBER(16,0) CONSTRAINT "APP_NUM_NN" NOT NULL ENABLE, 
"ACTIVE" CHAR(1) DEFAULT 0 CONSTRAINT "ACTIVE_NN" NOT NULL ENABLE, 
"STATUS" VARCHAR2(40) DEFAULT 'APPLICATION ENTERED' CONSTRAINT "STATUS_NN" NOT NULL ENABLE, 
"DATE_APPROVED" DATE, 
"DATE_APPLIED" DATE DEFAULT SYSDATE CONSTRAINT "DATE_APPLIED_NN" NOT NULL ENABLE, 
"ENTRY_TIME" TIMESTAMP (6) DEFAULT SYSDATE, 
 CONSTRAINT "ENTRY_NUM_PK" PRIMARY KEY ("ENTRY_NUMBER")
USING INDEX  ENABLE
 )
4

1 に答える 1

2

最後から 2 行目にセミコロンがあります。GROUP BY application_number; )それを取り除けば、大丈夫なはずです。

) の前にセミコロンを配置したため、セミコロンは Oracle のクエリ ターミネータとして機能します。Oracle はそれを見つけることができませんでした。

于 2014-12-10T21:59:53.753 に答える