Pogledajte određenu poruku
Staro 28. 12. 2011.   #2
salebab
profesionalac
Qualified
 
Avatar salebab
 
Datum učlanjenja: 09.11.2006
Lokacija: Beograd
Poruke: 102
Hvala: 19
21 "Hvala" u 18 poruka
salebab is on a distinguished road
Pošaljite ICQ poruku za salebab Pošaljite poruku preko MSN za salebab
Default

Pre svega, u likes tabeli ti ne treba kolona like_user koja sadrži username usera, već je bolje da staviš user_id, kako bi ti tabela likes bila agregatna tabela između usera i postova.

Preporučujem ti da dodaš i kolonu "likes" u tabeli posts, koja je brojač lajkova i da taj brojač uvećavaš/smanjuješ na like/unlike. Ovo će ti drastično poboljšati performanse, jer više nemaš potrebu za COUNT nad tabelom likes, da bi video koliko ima lajkova za post.

Sada jednostavnim upitom dobiješ sve postove i broj lajkova, nema potrebe za join-om.

Ako želiš i spisak svih lajkova, možeš iz prvog upita izvući sve ID-eve postova, a zatim u drugom upitu izvući sve lajkove za sve te postove, spakovati ih u matricu i posle u view-u izvući za svaki post lajkove... Koristiš SELECT * FROM likes INNER JOIN users on users.uid = likes.user_id WHERE likes.post_id IN(...)
__________________
www.salebab.net

Poslednja izmena od salebab : 28. 12. 2011. u 15:05.
salebab je offline   Odgovorite uz citat
"Hvala" salebab za poruku: