{"query":"
SELECT m.id, m.name, subject, scheduled_date as date, m.created_id as owner_id, campaign_id,
  camp.name as campaign, camp.external_identifier, campaign_type_id,
  createdContact.first_name AS owner,
  (select count(r.id) from civicrm_mailing_recipients as r where r.mailing_id=m.id) as recipients,
  open,click
FROM civicrm_mailing as m
LEFT JOIN civicrm_campaign as camp ON m.campaign_id = camp.id
LEFT JOIN   civicrm_contact createdContact ON ( m.created_id = createdContact.id )
LEFT JOIN (select count(*) as open ,id from (SELECT civicrm_mailing.id, COUNT(civicrm_mailing_event_opened.id) as opened 
  FROM civicrm_mailing_event_opened 
  JOIN  civicrm_mailing_event_queue ON  civicrm_mailing_event_opened.event_queue_id = civicrm_mailing_event_queue.id 
  JOIN  civicrm_mailing_job ON  civicrm_mailing_event_queue.job_id = civicrm_mailing_job.id             
  JOIN  civicrm_mailing ON civicrm_mailing_job.mailing_id = civicrm_mailing.id  AND civicrm_mailing_job.is_test = 0  AND civicrm_mailing.is_completed= true GROUP BY civicrm_mailing_event_queue.id, civicrm_mailing.id) as dist group by id) as opened on opened.id = m.id
LEFT JOIN (select count(*) as click ,id from (SELECT civicrm_mailing.id, COUNT(civicrm_mailing_event_trackable_url_open.id) as clicked 
  FROM civicrm_mailing_event_trackable_url_open 
  JOIN  civicrm_mailing_event_queue ON  civicrm_mailing_event_trackable_url_open.event_queue_id = civicrm_mailing_event_queue.id 
  JOIN  civicrm_mailing_job ON  civicrm_mailing_event_queue.job_id = civicrm_mailing_job.id              
  JOIN  civicrm_mailing ON civicrm_mailing_job.mailing_id = civicrm_mailing.id  AND civicrm_mailing_job.is_test = 0  AND civicrm_mailing.is_completed= true GROUP BY civicrm_mailing_event_queue.id, civicrm_mailing.id) as dist group by id) as clicked on clicked.id = m.id

where is_completed = true;
","params":{"1":{"name":"campaign_id","type":"Integer"}}}
