sql >> Database teknologi >  >> RDS >> Mysql

sql-forespørgsel med if-statment

Jeg ville skrive forespørgslen på denne måde:

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;

Her er en anden løsning, men tilbud, der ikke har noen konverterede klik vises ikke i forespørgselsresultatet:

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;


  1. MySQL-fejl:SELECT-listen er ikke i GROUP BY-sætning

  2. Spring data JPA:Får Ingen aliaser fundet i resultat tuple! fejl ved udførelse af tilpasset forespørgsel

  3. Hvad er PyMySQL, og hvordan adskiller det sig fra MySQLdb? Kan det påvirke Django-implementeringen?

  4. Hvordan definerer man en tilpasset rækkefølge i ORDER BY-klausulen?