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

Grupuj, nie pracując z sumą 2 pól

Problem polega na tym, że store o id 1 ma dwa odpowiadające sobie rekordy w store_sub tabela, co oznacza, że ​​qty pole pojawi się dwukrotnie dla sklepu 1. Musisz osobno zsumować 2 tabele w podzapytaniach i połączyć zsumowane wersje razem:

select t1.department, t1.sqty, t2.ssubqty
from
  (select department, sum(qty) as sqty from store group by department) t1
left join
  (select s2.department, s1.sum(sub_qty) as ssubqty
   from store_sub s1
   inner join store s2 on s1.parent_id=s2.id
   group by s2.department) t2 on t1.department=t2.department


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstawianie tablicy obrazów plików do bazy danych

  2. Hibernuj CriteriaBuilder, aby dołączyć do wielu stołów

  3. Windows7 WAMP problemy z 64-bitowym stosem MySQL

  4. Czy istnieje sposób na uruchomienie MySQL w pamięci dla przypadków testowych JUnit?

  5. CONVERT_TZ – Jak zmienić strefę czasową MySQL w zapytaniu