In de SQL-standaard moeten identifiers tussen dubbele aanhalingstekens staan ("
). En daar voldoet de Oracle-database aan de norm.
Enkele aanhalingstekens ('
) zijn voor karakterconstanten, b.v. zoals je deed in semester='Spring'
, kunnen ze niet worden gebruikt voor identifiers zoals kolomnamen, tabelnamen of een kolomalias.
Dus je moet gebruiken:
classes.limit-classes.class_size as "seats_available"
Je hebt de dubbele aanhalingstekens echter niet echt nodig, omdat je identifier geen ongeldige tekens bevat, dus
classes.limit-classes.class_size as seats_available
werkt net zo goed
Niet gerelateerd, maar:getallen mogen niet tussen enkele aanhalingstekens worden geplaatst 2017
is een getalconstante, '2017'
is een stringconstante. Gebruik dus where year = 2017
in plaats daarvan