Работа вам нужна срочно. Не волнуйтесь, уложимся!
- 22423 авторов готовы помочь тебе.
- 2402 онлайн
Access.
Предмет: Информационные технологии
Раздел предмета: Базы данных, SQL-запросы в Microsoft Access
На изображении представлено окно Microsoft Access с ошибкой в SQL-запросе. Ошибка гласит:
Ошибка синтаксиса (пропущен оператор) в выражении запроса 'Билеты.Код_расписания = Расписание.Код_расписания INNER JOIN Поезда ON Расписание.Код_поезда = Поезда.Код_поезда'.
Ошибка синтаксиса указывает на то, что нарушен порядок соединения таблиц (JOIN
). В Access (в отличие от других СУБД) все JOIN
-операции должны быть правильно вложены и заключены в скобки, если их несколько.
Также важно: в Microsoft Access порядок JOIN
-ов и ON
-условий должен быть строго соблюдён.
Исправим запрос с учётом синтаксиса Microsoft Access:
SELECT Поезда.Номер_поезда, COUNT(Билеты.Код_билета) AS Количество_билетов
FROM ((Билеты
INNER JOIN Расписание ON Билеты.Код_расписания = Расписание.Код_расписания)
INNER JOIN Поезда ON Расписание.Код_поезда = Поезда.Код_поезда)
GROUP BY Поезда.Номер_поезда;
Вложенные JOIN
-ы:
JOIN
, они должны быть заключены в скобки.Билеты
и Расписание
, затем результат соединяется с таблицей Поезда
.GROUP BY
используется корректно — по полю Номер_поезда
.
COUNT(Код_билета)
— подсчёт количества билетов на каждый поезд.
Ошибка вызвана неправильным порядком и синтаксисом JOIN
-ов. В Access нужно использовать вложенные скобки при нескольких соединениях таблиц.
Если будут ещё ошибки или нужно объяснить, как работает каждая часть запроса — с радостью помогу!