Я пытаюсь добиться следующего результата отчета:
campaign_name visits leads registrations
3333 3 0 0
direct 3 2 1
(null) 0 1 1
test 0 1 1
У меня есть такая структура базы данных, и теперь я совершенно уверен, что отношения неверны. Я играл с ними, но я делаю это неправильно,
http://sqlfiddle.com/#!9/451de/7
Ваш совет будет оценен.
Попробуй это.
SELECT `campaign_name`,
count(t.id) as visits,
count(l.id) as leads ,
count(r.id) as registrations
FROM `trackings` t
LEFT JOIN leads l ON t.`id` = l.`tracking_id`
LEFT JOIN registrations r ON t.`id` = r.`tracking_id`
WHERE t.created_at between '2015-04-01'
AND '2015-05-31'
AND t.aff_id =5
GROUP BY `campaign_name`
ORDER BY visits DESC
не то, что вы ищете из-за даты выпуска.
таблица отслеживания
Я бы
6 2015-04-07 18:54:57
26 2015-04-13 11:06:13
50 2015-04-20 14:42:23
пока ведет
26 2015-05-13 11:07:09
50 2015-05-20 14:43:07
Попробуй это
mysql_query("select campaign_name , count(t.id)
as visits, count(l.id) as leads ,count(r.id) as registrations
from trackings t
left join leads as l
on l.tracking_id =t.id
left join registrations as r
on r.tracking_id =t.id
where t.created_at between '2015-04-01' AND '2015-05-31' and t.aff_id =5
group by campaign_name");