Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak lepiej połączyć kilka tabel (w tym podzapytania) w jednym zapytaniu?

Wierzę, że dzięki temu uzyskasz to, czego szukasz (jeden z wielu sposobów):

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Grupuj wiersze MySQL, aby znaleźć różnicę czasu

  2. Przerywane przerwanie potoku JDBC i awaria łącza

  3. Wstaw słownik z listy do bazy danych w pythonie

  4. Zdalne połączenia Mysql Ubuntu

  5. CREATE VIEW WHERE SELECTid =VIEWrowID