Heim  >  Fragen und Antworten  >  Hauptteil

Wenn der Wert vorhanden ist, rufen Sie die Datensatzsumme ab und behandeln Sie sie als 1 statt als genauen Wert

Ich brauchte „Öffnen“ als 2 und Klicken als 1, aber jetzt bekomme ich „Öffnen als 5“ und Klicken als 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粉289775043P粉289775043179 Tage vor351

Antworte allen(1)Ich werde antworten

  • P粉883223328

    P粉8832233282024-04-05 15:13:20

    sum() 按预期工作。如果您希望将 0 以上的任何值视为 1,请编写如下 if 条件。话虽如此,coalesce 在这里看起来是多余的。

    sum(if(open is not null and open > 0, 1, 0)),
    sum(if(click is not null and click > 0, 1, 0))

    Antwort
    0
  • StornierenAntwort