Мне нужно подсчитать количество строк в track_plays, которые имеют определенный track_ID, и присоединиться к этому с помощью моего запроса, который выбирает большое количество данных из разных таблиц.SQL - левое соединение SELECT с SELECT COUNT (*)
Вот что я до сих пор;
SELECT
T.ID,
T.url,
T.name,
T.pic,
T.T_ID,
COUNT(P.T_ID) AS plays,
S.Status,
G.gig_name,
G.date_time,
G.lineup,
G.price,
G.ticket,
E.action,
E.ID,
E.timestamp,
E.E_ID
FROM
events E
LEFT JOIN
TRACKS T
ON T.ID = E.ID AND E.action = 'has uploaded a track.' AND E.E_ID = T.T_ID
LEFT JOIN
STATUS S
ON S.ID = E.ID AND E.action = 'has some news.' AND E.E_ID = S.S_ID
LEFT JOIN
GIGS G
ON G.ID = E.ID AND E.action = 'has posted a gig.' AND E.E_ID = G.G_ID
LEFT JOIN
track_plays P
ON P.A_ID = E.ID AND E.action = 'has uploaded a track.' AND E.E_ID = P.T_ID
WHERE E.ID = '3'
ORDER BY E.timestamp DESC LIMIT 15
Hopeflly, которые должны объяснить, что я пытаюсь сделать быстрее, чем слова может, но в основном в plays
подсчитывает количество пьес была трек. Events
- это таблица, в которой все новые идентификаторы отправляются на любой новый контент. Им дается действие, чтобы мы могли определить, какое событие они есть, и, следовательно, извлекать данные из правильной таблицы (таблиц).
На данный момент, с COUNT там запроса дает что-то вроде этого
ID name pic T_ID plays ...
3 1 2 44 100
данные я поставил там только представитель, и это дает больше столбцов, чем это. Дело в том, что это должно дать что-то подобное;
ID name pic T_ID plays ...
3 1 2 44 100
3 3 1 48 10
4 8 2 21 86
Как вы можете видеть, с COUNT в нем выдается много данных.
Прошу прокомментировать, если вам нужно больше деталей. Я не хочу вдаваться в подробности, поскольку это может быть не нужно, и у меня есть склонность к вафли.
Спасибо!
'' 'ГРУППА''' твой друг, я думаю. Итак, E.ID является «ключом» в таблице результатов или я неправильно понял? – luksch
Вот что я не хотел погружаться. По большей части запроса E_ID является «ключом», но в случае подсчета воспроизведения да T_id является «ключом». –
Извините ... я изменил свой комментарий, когда увидел свою ошибку ... – luksch