2017-01-19 6 views
0

サブクエリは単独で問題なく実行されます。しかし、クエリ全体が機能していません。私が得ているエラーは役に立たないSQL command not properly endedです。私はOracleサブクエリは実行されますが、このクエリ全体は実行されません

select table_name, sum(has_last_mod_time) as asdf 
from 
    (
    select 
     table_name, 
     case when lower(column_name) = 'last_modified_time' then 1 else 0 end has_last_mod_time 
    from all_tab_columns 
) 
group by table_name 
) as sdfsdf 

答えて

2

Oracleのテーブルの別名のためASを使用してサポートしていません...それを百​​倍を編集しようとしたとヒントを探し、それを把握することはできませんしました。

as sdfsdf

からasを外ししかし、あなたのクエリがより多くの問題は、その後、ちょうどそのました:

あなたは、あまりにも多くの1 )group byを持っているが、間違った場所です。

select table_name, sum(has_last_mod_time) as asdf 
from (
    select 
     table_name, 
     case when lower(column_name) = 'last_modified_time' then 1 else 0 end has_last_mod_time 
    from all_tab_columns 
    --<< no ")" here 
) sdfsdf --<< no AS here 
group by table_name --<< and the group by needs to go here 
+0

あなたは深刻です.... – simplycoding

+2

@simplycoding - 1.はい、a_horseは深刻です。 2.エラーメッセージは「無駄」ではありませんでした。もしあなたがそれをより詳細に見ると、エラーがどこで発生したのかを正確に**知ることができます(a_horseがあなたに語ったところです)。 3.この種の質問(この回答に対するあなたのコメント)は、人々が将来あなたを手伝ってほしくないようにするでしょう。これは "無料のヘルプ"ウェブサイトであることを覚えておいてください。あなたが答えを信じていない場合は、そのようなスマートなコメントをする前にテストしてください。 – mathguy

+1

@a_horse_with_no_name - はい、それは2回です。編集ウィンドウで 'select * from dual as a'と打ちました。声明を実行しなくても、「as」という単語の直後に少し赤い波線が現れると、私は困っているでしょう。その後、私はそのステートメントを実行し、Query Resultタブは私にエラーメッセージとそれが起こった正確な位置を表示します。 (私はSQL Developerを約90%使っていますので、私も知っています!)もう10%はSQL \ * Plusを使用しています。もちろん、あなたにはすべてのことがわかり、Toadを1〜2回使用して、同じ。 – mathguy

関連する問題