Scriverei la query in questo modo:
SELECT o.name AS offer, COUNT(c.id) AS clicks,
SUM( IF(c.conversionDate IS NOT NULL, o.commission, NULL) ) AS revenue
FROM offers o JOIN clicks c ON (c.offerID=o.ID)
GROUP BY o.ID;
Ecco un'altra soluzione, ma offerte che non ne hanno nessuna i clic convertiti non vengono visualizzati nel risultato della query:
SELECT o.name AS offer, COUNT(c.id) AS clicks,
SUM(o.commission) AS revenue
FROM offers o JOIN clicks c
ON (c.offerID=o.ID AND c.conversionDate IS NOT NULL)
GROUP BY o.ID;