Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error (ORA-00923: FROM keyword not found where expected)

Tags:

sql

oracle

    select 
      country_olympic_name, 
      SUM(part_gold) as 'Number of Gold Medals'
    From
      games.country,
      games.participation
   where
      participation.country_isocode = country.country_isocode
   group by
      country_olympic_name;

I have been getting the error ORA-00923: FROM keyword not found where expected and do not know why, please help

like image 939
user2784327 Avatar asked Sep 16 '13 14:09

user2784327


3 Answers

Identifiers need to be quoted with double quotes ("). Single quotes (') denote a character value (not a "name").

Therefor you need to use:

SUM(part_gold) as "Number of Gold Medals"

More details in the manual:

  • Database Object Names and Qualifiers
  • Text literals
like image 84
a_horse_with_no_name Avatar answered Oct 12 '22 10:10

a_horse_with_no_name


Check reserved words. This was my issue. For whatever reason using "size" as a column alias caused oracle to spit that exact error out and it had me scratching my head for a while.

select 1 size, 1 id from dual
like image 20
user239512 Avatar answered Oct 12 '22 12:10

user239512


Add comma after SELECT QUERY


In my case, I had this query

SELECT BANK_NAME
DECODE (SWIFT_CODE, 'BRDEROBU', 'BRD',
                   'NO RESULT') RESULT
FROM BANK_GAR;

As you may see, I didn't had the comma after the SELECT BANK_NAME line.

The correct query is:

SELECT BANK_NAME,
DECODE (SWIFT_CODE, 'BRDEROBU', 'BRD',
                   'NO RESULT') RESULT
FROM BANK_GAR;
like image 1
Justice Bringer Avatar answered Oct 12 '22 12:10

Justice Bringer