2015-05-16 4 views
0

Я не знаю, что может быть неправильно с этим:Неоднозначное имя столбца

Пожалуйста, помогите мне:/

SELECT 
    Name, CourseID, CourseName, MeetingDays, MeetingTime, ProfID 
FROM 
    Course, CourseSection, Student 
WHERE 
    Course.CourseID = CourseSection.CourseID 
ORDER BY 
    Name, CourseName 
+0

Какое сообщение об ошибке вы получаете? – Timo

+2

Используйте псевдонимы таблиц и правильный синтаксис 'join'. Это исправит вашу проблему. –

+2

[Плохие привычки пинать: использование JOIN в старом стиле] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins. aspx) - стиль старого стиля * разделенный запятыми список таблиц * был заменен на * правильный * ANSI 'JOIN' синтаксис в ANSI - ** 92 ** SQL Standard (** более 20 лет ** назад) и его использование не рекомендуется –

ответ

0

Лобовое имя столбца CourseID присутствует в двух таблицах. Поэтому, чтобы исправить это, используйте <tablename>.CourseID:

SELECT Name, Course.CourseID, CourseName, MeetingDays, MeetingTime, ProfID 

FROM Course, CourseSection, Student 

WHERE Course.CourseID = CourseSection.CourseID 

ORDER BY Name, CourseName 
+0

ohh жаль, что я забыл упомянуть название колонки. CourseID - это тот, который представлен в двух таблицах, а также тот, который дает мне ошибку «Неоднозначное название столбца». –

+0

Ой, черт возьми, я думал, что это неоднозначная колонка «Имя». Итак, каковы таблицы с CourseID в качестве столбца – Abhi

+0

таблицы с CourseID Are = CourseSection и курс. –

Смежные вопросы