イムかなりSQLの初心者と私は今、問題はこれである何時間ワークアウトにしようとしてきた:私はGENRE.NAME列に問題がなければならないと思わせるSQL - 無効な識別子ですが、どこにありますか?
SELECT COUNT (DISTINCT c.BAND_ID)Number_of_bands, COUNT(DISTINCT c.COMP_ID)"Total_Competitions",g.NAME GENRE_TYPE
FROM ENTERED_COMPS ec,COMPETITIONS c,GENRE g
WHERE c.COMP_ID = ec.COMP_ID
AND g.GENRE_ID = c.GENRE_ID
AND c.BAND_ID = b.BAND_ID
GROUP BY GENRE_TYPE
ORDER BY GENRE_TYPE ASC;
Oracle just comes up with the error
ORA-00904: "GENRE_TYPE": invalid identifier
00904. 00000 - "%s: invalid identifier"
*Cause:
*Action:
Error at Line: 6 Column: 9
.. ..名前が間違っているかスペルが間違っています。しかし、そうではありません。
アルファベット順に出力し、各ジャンルの競技会を開催する回数と各競技に入ったバンドの数を示すことで、ジャンルの比較人気を分析しようとしていますジャンル。
これは少し簡単にするためにここに私のERDへのリンクがあります - http://www.missingstudios.com/matt/ERD%20Logical.pdf
サポートがはるかに高く評価されるだろう!
代わりに 'GROUP BY g.NAME'に変更できますか? –
GROUP BY句とORDER BY句の両方で 'GENRE_TYPE'ではなく' g.Name'を使用してみてください。 –
暗黙的な結合構文の使用をやめてください。これは非常にpporのプログラミングテクニックです。暗黙的な結合は、偶発的な相互結合が維持しやすく、正しい可能性がはるかに低い。 – HLGEM