В стандартния SQL идентификаторите трябва да бъдат оградени в двойни кавички ("
). И базата данни на Oracle отговаря на стандарта там.
Единични кавички ('
) са за символни константи, напр. както направихте в semester='Spring'
, могат да не се да се използва за идентификатори като имена на колони, имена на таблици или псевдоним на колона.
Така че трябва да използвате:
classes.limit-classes.class_size as "seats_available"
Всъщност не се нуждаете от двойни кавички, тъй като вашият идентификатор не съдържа невалидни знаци, така че
classes.limit-classes.class_size as seats_available
ще работи също толкова добре
Не е свързано, но:числата не трябва да не бъде оградено в единични кавички 2017
е числова константа, '2017'
е низова константа. Така че трябва да използвате where year = 2017
вместо това