/ / MySQL Left Join - jak uzyskać liczbę rekordów znalezionych w 2. tabeli - mysql

Łączenie w lewo dla MySQL - jak uzyskać liczbę rekordów znalezionych w drugiej tabeli - mysql

Table1

id    Name

1     John

2     Sheldon

3     Sarah

========

Table2

rid   id  id2  relation

1     1    2    1

2     1    3    1

Jak uzyskać wszystkich członków z tabeli 1 w jednym zapytaniu i wszystkich relacjach każdego członka.

Chcę, aby wynik był:

Jhon       2

Sheldon    0

Sarah      0

Odpowiedzi:

1 dla odpowiedzi № 1
SELECT t1.name, IFNULL(COUNT(t2.id2), 0)
FROM table1 t1 LEFT JOIN table2 t2 ON t1.id=t2.id
GROUP BY t1.id

3 dla odpowiedzi № 2
select Table1.name, count(Table2.id) from Table1 LEFT Join Table2 on Table1.id=Table2.id group by Table2.id

OR

select Table1.name,IFNULL(count(Table2.id), 0) from Table1  LEFT Join Table2  on Table1.id=Table2.id group by Table2.id

wprowadź opis obrazu tutaj