I need to "open" as 2 and click as 1 but now I'm getting like open as 5 and click as 2
"SELECT COALESCE(sum(requested),0) as requested, COALESCE(sum(processed),0) as processed, COALESCE(sum(open),0) as open, COALESCE(sum(click),0) as click, COALESCE(sum(dropped),0) as dropped, COALESCE(sum(delivered),0) as delivered, COALESCE(sum(spamreport),0) as spamreport, COALESCE(sum(deferred),0) as deferred, COALESCE(sum(bounce),0) as bounce, COALESCE(sum(unsubscribe),0) as unsubscribe FROM CAMPAIGN_REPORTS WHERE _kftCampaingID='".$campaignId."'"
P粉8832233282024-04-05 15:13:20
sum()
works as expected. If you want to treat any value above 0 as 1, write an if condition like below. Having said that, coalesce
looks redundant here.
sum(if(open is not null and open > 0, 1, 0)), sum(if(click is not null and click > 0, 1, 0))