sql >> Database teknologi >  >> RDS >> PostgreSQL

Postgres COUNT antal kolonneværdier med INNER JOIN

Du bør prøve:

SELECT a.question_id, 
       SUM(CASE WHEN a.response = 'Yes' THEN 1 ELSE 0 END) AS NumsOfYes, 
       SUM(CASE WHEN a.response = 'No' THEN 1 ELSE 0 END) AS NumsOfNo,
       SUM(CASE WHEN a.response = 'Possibly' THEN 1 ELSE 0 END) AS NumOfPossibly,
       costperlead  * SUM(CASE WHEN a.response = 'Yes' THEN 1 ELSE 0 END) + SUM(CASE WHEN a.response = 'Possibly' THEN 1 ELSE 0 END) AS revenue
FROM responses a 
     INNER JOIN questions b ON a.question_id = b.id 
GROUP BY a.question_id, b.costperlead


  1. Anbefalinger til understøttelse af både Oracle og SQL Server i den samme ASP.NET-app med NHibernate

  2. Hurtigt tip – Fremskynd en langsom gendannelse fra transaktionsloggen

  3. Oracle-udløser efter indsættelse eller sletning

  4. Hvordan tilføjes en ny kolonne til MYSQL-tabellen?