Из-за того, что происходит в перекрестном соединении, каждая запись в 1-й таблице связана с другой записью 2-й таблицы. В вашем случае предположим, что есть 3 студента и 3 курса
Стол ученический
Id | Имя
1 | а
2 | PQR
3 | хуг
Курсы
Код | Имя
S4000 | c1
S4001 | c2
S4002 | c3
Таблица перекрестных соединений
Student.Id | Student.Name | Courses.code | курсы.имя
1 | а | S4000 | c1
2 | PQR | S4000 | c1
3 | хуг | S4000 | c1
1 | а | S4001 | c2
2 | PQR | S4001 | c2
3 | хуг | S4001 | c2
1 | а | S4002 | c3
2 | PQR | S4002 | c3
3 | хуг | S4002 | c3
Теперь вы можете видеть их 3 записи, созданные для каждого курса, так что вы получаете 3 ответа каждый раз.
поэтому в вашем запросе должно быть одно и то же общее поле для получения требуемых записей, например, для связи ключа Фурье
Вы добавляете общее поле в предложение where, например
SELECT COUNT (studentID) AS Expr1
ОТ КРЕСТА
регистрация
ГДЕ (Course.courseCode = 'S4000')
and Course.studentID=Enrolment.studentID
ИЛИ вы можете использовать внутреннее соединение в общем поле