W standardzie SQL identyfikatory muszą być ujęte w cudzysłów ("
). A baza danych Oracle jest zgodna z tamtejszym standardem.
Pojedyncze cudzysłowy ('
) są dla stałych znakowych, np. tak jak w semester='Spring'
, nie mogą nie być używane do identyfikatorów, takich jak nazwy kolumn, nazwy tabel lub aliasy kolumn.
Musisz więc użyć:
classes.limit-classes.class_size as "seats_available"
W rzeczywistości nie potrzebujesz jednak podwójnych cudzysłowów, ponieważ Twój identyfikator nie zawiera żadnych nieprawidłowych znaków, więc
classes.limit-classes.class_size as seats_available
będzie działać równie dobrze
Niezwiązane, ale:liczby nie być ujęty w pojedyncze cudzysłowy 2017
jest stałą liczbową, '2017'
jest stałą łańcuchową. Powinieneś więc użyć where year = 2017
zamiast tego