I SQL-standarden skal identifikatorer være omgivet af dobbelte anførselstegn (" ). Og Oracle-databasen overholder standarden der.
Enkelte anførselstegn (' ) er for tegnkonstanter, f.eks. som du gjorde i semester='Spring' , kan de ikke bruges til identifikatorer som kolonnenavne, tabelnavne eller et kolonnealias.
Så du skal bruge:
classes.limit-classes.class_size as "seats_available"
Du behøver faktisk ikke de dobbelte anførselstegn, da din identifikator ikke indeholder nogen ugyldige tegn, så
classes.limit-classes.class_size as seats_available
vil fungere lige så godt
Ikke-relateret, men:tal bør ikke være omgivet af enkelte anførselstegn 2017 er en talkonstant, '2017' er en strengkonstant. Så du bør bruge where year = 2017 i stedet