помогите с базовым SQL QUERY - PullRequest
1 голос
/ 06 марта 2011

Я создал несколько таблиц для школьного проекта.Интересующие таблицы:

                //table courses
        CREATE TABLE courses(courseId SERIAL PRIMARY KEY, facultyId REFERENCES faculties(facultyId), courseName TEXT);

                //table weights
    CREATE TABLE weights(weightId SERIAL PRIMARY KEY, weightName TEXT, weight INTEGER);

//table subjects
CREATE TABLE subjects(subjectId SERIAL PRIMARY KEY, subjectName TEXT);
        //table weights_subjects_courses
    CREATE TABLE weights_subjects_courses(courseId integer REFERENCES courses(courseId), weightId integer REFERENCES weights(weightId), subjectId integer REFERENCES subjects(subjectId)

Проблема возникает, когда я пытаюсь выполнить следующий запрос

SELECT * FROM courses, subjects, weights WHERE courses.courseId= weights_subjects_courses.courseId AND subjects.subjectId= weights_subjects_courses.subjectId AND weights.weightId= weights_subjects_courses.weightId ORDER BY courseName;

Я получаю эту ошибку Ошибка SQL:

ERROR:  missing FROM-clause entry for table "weights_subjects_courses"
LINE 1: ...ourses, subjects, weights WHERE courses.courseId= weights_su...
                                                             ^

Спасибо взаранее

1 Ответ

2 голосов
/ 06 марта 2011

В вашем предложении where есть weights_subjects_courses, но его нет в предложении from.Всякий раз, когда вы присоединяетесь к таблицам в предложении where, вам также необходимо включать их в предложение from.

Так что просто добавьте weights_subjects_courses в предложение from, чтобы исправить эту ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...