sql >> Databáze >  >> RDS >> Mysql

levé spojení násobení hodnot

Můj blbec je dílčí dotaz:

select count(capture_id) as count_captures, 
    (select count(id) as count_items
         from items i where i.creator_user_id = captures.user_id) as count_items 
from captures 
where user_id = 9

Opravdu si nejsem jistý, co můžete udělat, abyste se tomu vyhnuli. Vidíte očekávané (a obecně žádoucí chování).

Samozřejmě, pokud víte, že ID v obou se nebudou opakovat, můžete použít different:

SELECT COUNT( DISTINCT capture_id) as count_captures, 
      COUNT( DISTINCT items.id) as count_items 
FROM captures 
LEFT JOIN items ON captures.user_id = items.creator_user_id 
    WHERE user_id = 9


  1. Rozdíl mezi =a :=v MySQL

  2. Chyba při provádění mvn sql:execute

  3. pád aplikace na JSON jparser vygeneruje požadavek http

  4. MariaDB Server 10.0.33 je nyní k dispozici