Количество результатов

bruto

Новичок
Здравствуйте!

Подскажите пожалуйста.

Есть запрос:
Код:
SELECT
FROM table1 as A
LEFT JOIN table2 as B
ON B.id=A.user_id
LEFT JOIN table3 as C
ON C.user_id=$user_id AND A.id = C.t_id
WHERE 1 ORDER BY A.s_date ASC
Как мне переделать запрос, что бы узнать
1. Сколько найдено записей в таблице 3 всего.
2. Максимальное значение ячейки turn в таблице 3 (в найденных записях)
 

bruto

Новичок
Я не верно описал задачу...

Я конечно могу получить количество записей из таблицы 3.
Мне нужно при прохождении цикла каждый раз получать количество записей в таблице 3 с условием id(записи из тб.1.) = таблица1_id(записи из тб.3.)

Возможно ли это сделать одним запросом?
 

Hello

Новичок
Я не верно описал задачу...

Я конечно могу получить количество записей из таблицы 3.
Мне нужно при прохождении цикла каждый раз получать количество записей в таблице 3 с условием id(записи из тб.1.) = таблица1_id(записи из тб.3.)

Возможно ли это сделать одним запросом?
Ничего не понятно. Дай дамп или пример базы на http://sqlfiddle.com/ и напиши какой результат ты хочешь получить.
 

Фанат

oncle terrible
Команда форума
Можно сделать 1 запросом. для этого тебе нужен оператор GROUP BY и внятно описать свою задачу, с примерами
 

bruto

Новичок
Могу только пример...

Таблица 1 - Курсы.
Таблица 3 - Уроки относящиеся к тому или иному курсу.

Нужно вывести все курсы и количество уроков в каждом.

у курса есть ID у урока соответственно ID_курса
 

bruto

Новичок
Образовалась еще проблема - думал все работает.. ан-нет...

Есть таблица 4 которая привязывает пользователя к курсу.
Там user_ID и course_ID

Выводя каждый курс мне нужно знать есть ли в записи таблицы 4 с ID выводимого циклом курса мой ID и все это в рамках того же одного запроса :)
 

AnrDaemon

Продвинутый новичок
Да, я понимаю. Я даже соглашусь, что если всё, что ему нужно, это получить одну единственную цифру в ответе - количество часов на курс, то ему действительно нужен один запрос.
Но в общем случае, надо понимать, что один запрос - это не всегда верное решение.
 
Сверху