MySQL: Adott hozzászólás beküldőjének összes hozzászólásának száma.
Sziasztok.
Van egy 'posts' táblám, amiből az alább látható lekérdezéssel kérem le az adatokat.
A 'posts' táblában eltároltam minden hozzászólás beküldőjének azonosítóját, és lekérdezéskor ezen azonosító alapján hozzáfűzöm a kimenethez a beküldő nicknevét.
Szeretném megoldani ugyanezen lekérdezésen belül, hogy a kilistázott posztok beküldőinek, ÖSSZESEN hány posztja van. Próbálkoztam a COUNT mindenféle elhelyezésével, és paraméterezésével, de legtöbbször az lett a vége, hogy kilistázta a beküldőket, és azt hogy összesen hány posztjuk van, de a posztokat nem.
Tehát én ehhez a poszt listázó, nicket is kiíró lekérdezéshez szeretném hozzáadni az adott beküldő ÖSSZES posztjának a számát, hogy ne kelljen újabb lekérdezést indítani PHP ból.Köszönettel:
InstantWater
■ Van egy 'posts' táblám, amiből az alább látható lekérdezéssel kérem le az adatokat.
A 'posts' táblában eltároltam minden hozzászólás beküldőjének azonosítóját, és lekérdezéskor ezen azonosító alapján hozzáfűzöm a kimenethez a beküldő nicknevét.
Szeretném megoldani ugyanezen lekérdezésen belül, hogy a kilistázott posztok beküldőinek, ÖSSZESEN hány posztja van. Próbálkoztam a COUNT mindenféle elhelyezésével, és paraméterezésével, de legtöbbször az lett a vége, hogy kilistázta a beküldőket, és azt hogy összesen hány posztjuk van, de a posztokat nem.
Tehát én ehhez a poszt listázó, nicket is kiíró lekérdezéshez szeretném hozzáadni az adott beküldő ÖSSZES posztjának a számát, hogy ne kelljen újabb lekérdezést indítani PHP ból.
SELECT posts.*, users.nick AS nick
FROM `posts`
RIGHT JOIN `users` ON posts.poster=users.id
WHERE `site` = 'c' OR `site` = '0'
ORDER BY `date` DESC
LIMIT 10;
InstantWater
mindenképpen legalább kettő kell
Működik, de nem ezt szeretném
Cachelni. SQL egyik alapszabálya, hogy olyat nem tárolunk amit ki lehet számolni, bár ha végülis nem sikerül megoldani, akkor kénytelen leszek 2 külön lekérdezéssel megoldani.
Azért köszi
Subquery
Még egy JOIN?
Lehet...
Ezek a joinok kezdenek összezavarni már.
Sima egytáblás lekérdezések mennek, de ez a többtáblás még picit új nekem.
Alkottam egy ilyet:
Valami ilyesmire
eredmény
Remélem megoldja a problémát :)
Sebesség
Működik
A sebesség kérdéshez hozzátenném, hogy egyszerre max 20 sort listázok ki, kérdés, hogy ennyinél is számít-e a sebesség?
Mondjuk azt hozzá kell tenni hogy több mint 12000 post van.
Ha lassú, akkor csináljam meg inkább 2 külön lekérdezésben?
Ezért vagyok itt mert nem tudom, hogy hogy lenne célszerűbb.
Elsősorban szerintem nem a