Так я учусь MySQL, и я пытаюсь сделать следующее:подсчета SQL/помощь запроса
Для каждого списка инструктора его/ее имени и числа студентов он/она наставников.
Соответствующая часть схемы является:
Person(ID, Name)
Student(StudentID, MentorID)
Instructor(InstructorID)
Оба InstructorID
и StudentID
карта для Person.ID
и MentorID
карты для InstructorID
(Каждый студент имеет инструктор наставника, и оба преподаватели и студенты Persons).
Я попытался следующим без толка:
select p.Name, count(select s.StudentID
from Student s
where s.MentorID = i.InstructorID)
from Person p, Instructor i
where p.ID = i.InstructorID;
Кроме этого, после прочтения некоторых вещей на StackOverflow:
select InstructorDetails.Name, count(Mentees)
from Instructor i
inner join Person as InstructorDetails
on InstructorDetails.ID = i.InstructorID
inner join Student as Mentees
on Mentees.MentorID = i.InstructorID;
Есть предложения?
Благодаря Джон, это, кажется, как он должен работать! Однако я получаю синтаксическую ошибку (com.mysql.jdbc.exceptions.MySQLSyntaxErrorException). Я запускаю его через специальное приложение для своего класса, но можете ли вы придумать что-нибудь, что может быть неправильным? – Wires77
Вы использовали псевдоним в 'COUNT', он должен быть' COUNT (*) ' –
Хорошо, спасибо! Я все еще учился, так что спасибо за вашу помощь :) – Wires77