sql >> Databasteknik >  >> RDS >> Mysql

Hur är det bättre att sammanfoga några tabeller (inklusive underfrågor) i en fråga?

Jag tror att detta ger dig vad du letar efter (ett av många sätt):

SELECT t.diapason, COUNT(*) AS 'number_of_users'
FROM (SELECT CASE  
    when amount<100 then '0-100' 
    when amount>=100 then '100 +' END AS diapason
    FROM 
        (SELECT SUM(amount) AS amount 
        FROM payments 
        INNER JOIN (SELECT DISTINCT user_id FROM activity where login_time between '2012-04-05' and '2012-04-12') AS a ON payments.user_id = a.user_id
        GROUP BY payments.user_id) AS P
      ) t
GROUP BY t.diapason
  ORDER BY number_of_users desc
;



  1. Tabellfunktion med massinsamling kastar ogiltig datatyp

  2. Fjärranslutning till clearDB heroku-databas

  3. Gör en ackumulerad summa i view oracle

  4. SQL Server Agent Alerts