2016-04-29 11 views
0
select * from USER_SCHEDULER_JOB_RUN_DETAILS 
where substr(log_date,1,9) in (
    select substr(log_date,1,9) 
     from USER_SCHEDULER_JOB_RUN_DETAILS 
     where rownum <= 1 ORDER BY LOG_DATE DESC); 

上記の問合せを実行しているときに、次のエラーが発生します。ORA-00907:右括弧が欠落---内部問合せの実行

ORA-00907: missing right parenthesis 
00907. 00000 - "missing right parenthesis" 
*Cause: 
*Action: 
Error at Line: 7 Column: 55 

実行中の内部クエリを実行しようとしましたが、なぜ全体クエリを実行中にエラーが出るのかわかりません。

答えて

1

内側のクエリでorder byを使用しないでください。 これを試してみてください。

select * from USER_SCHEDULER_JOB_RUN_DETAILS 
where substr(log_date,1,9) in 
(select substr(log_date,1,9) from USER_SCHEDULER_JOB_RUN_DETAILS where rownum <= 1); 
0

追加情報は、括弧内に含まれていました。 ORA-00907

あなたはあなたの期待として、このクエリを使用することができます

select * 
    from USER_SCHEDULER_JOB_RUN_DETAILS 
where substr(log_date, 1, 9) in 
     (select MAX(substr(log_date, 1, 9)) over(ORDER BY LOG_DATE desc) 
      from USER_SCHEDULER_JOB_RUN_DETAILS 
     where rownum <= 1); 
関連する問題