od jakiegoś czasu szukam pomysłu na przerobienie zapytania.
Aktualnie korzystam z takiego rozwiązania;
$zapytanie = $this->sql->query(" SELECT * from plany "); $i = 0; while($item = $zapytanie->fetch_array()) { $zapytanie2 = $this->sql->fetch($this->sql->query("SELECT count(id) as count FROM rzeczy where rzeczy.user_id = ".$this->id." and rzeczy.plan_id = ".$item['id'])); }
Jednak przy większej ilości planów (100) zaczyna robić się z tego wąskie gardło.
Czy jest jakaś możliwość wykorzystania tu jednego zapytania (Inner?), jeśli tak to jak to zrobić?
Muszę pobrać pełną zawartość tabeli `plany` i licznik z `rzeczy`.
Próbowałem tak:
SELECT plany.name, COUNT( rzeczy.id ) AS count FROM plany INNER JOIN rzeczy ON plany.id = rzeczy.plan_id WHERE rzeczy.user_id = ".$this->id."
Ale nie do końca zwraca to co chcę (jeden licznik i nazwę)