Как считать выбранные строки в SQL

0

Я хочу подсчитать, сколько строк выбрано из запроса вместе с выбранными данными.

SELECT 'student'.'student id' AS ID,
    'student unit enrolment'.'session',
    'student unit enrolment'.'unit code',
    'units'.'unit name',
    'workshops'.'campus',
    'workshops'.'location',
    CONCAT (
        'teachers'.'first name',
        " ",
        'teachers'.'last name'
        ) AS Tutor
FROM 'student',
    'student unit enrolment',
    'units',
    'workshops',
    'teachers'
WHERE 'student'.'student id' = 'student unit enrolment'.'student id'
    AND 'student unit enrolment'.'unit code' = 'units'.'unit id'
    AND 'student unit enrolment'.'unit code' = 'workshops'.'unit code'
    AND 'workshops'.'teacher id' = 'teachers'.'staff id';
Теги:

2 ответа

0
select 'student'.'student id' as 'Student ID' , 'student unit enrolment'.'session' , 'student unit enrolment'.'unit code'
 , 'units'.'unit name' , 'workshops'.'campus' , 'workshops'.'location' , CONCAT('teachers'.'first name', " " , 'teachers'.'last name') as Tutor , 

(select count('student'.'student id') 
from 'student' ,  'student unit enrolment' , 'units' , 'workshops' , 'teachers' 
where 'student'.'student id' = 'student unit enrolment'.'student id' and 'student unit enrolment'.'unit code' =  'units'.'unit id'
and 'student unit enrolment'.'unit code' =  'workshops'.'unit code'
and 'workshops'.'teacher id' = 'teachers'.'staff id'
and 'student unit enrolment'.'Year' = '2014') as 'Total count of students'

from 'student' ,  'student unit enrolment' , 'units' , 'workshops' , 'teachers'
where 'student'.'student id' = 'student unit enrolment'.'student id'
and 'student unit enrolment'.'unit code' =  'units'.'unit id'
and 'student unit enrolment'.'unit code' =  'workshops'.'unit code'
and 'workshops'.'teacher id' = 'teachers'.'staff id'
and  'student unit enrolment'.'Year' = '2014'

Order by 'student unit enrolment'.'session' , 'student unit enrolment'.'unit code' , 'workshops'.'location' , 'workshops'.'class times'
0

Попробуй это:

$result = mysql_query(YOUR_QUERY_HERE);
mysql_num_rows($result);
  • 0
    получите эту ошибку: # 1064 - у вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса, который можно использовать рядом с «$ result = mysql_query» (выберите student id student . student id качестве идентификатора, «регистрация студенческого блока» в строке 1
  • 0
    Я не знаю об ошибке. Я не совсем понимаю, что ваш запрос хочет сделать, хотя, возможно, кто-то еще. У меня есть идея, глядя на это быстро, что вместо этого это может быть лучше, чем 2 или более запросов, скорее всего, внутреннее соединение (и, возможно, вложенный) для student_id, unit_code / unit_id и teacher_id / staff_id. Если вы объясните, какой выход вы ищете, возможно, это поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню