Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 6 Dołączył: 28.10.2009 Skąd: że znowu... Ostrzeżenie: (0%)
|
Mam pewien problem z zapytaniem, które strasznie zamula mi stronę.
Na stronie chcę pobrać Wszystkie obrazki z bazy danych które zostały polubione powyżej 3 razy. Moje zapytanie wygląda tak: Kod SELECT * FROM obrazek WHERE id in (SELECT id_obrazek FROM loveit HAVING count(loveit.id) > 3 ) ORDER BY id desc LIMIT $ilosc Tabela obrazek - zawiera listę wszystkich obrazków pola w bazie id - nr id obrazka Tabela loveit - zawiera listę wszystkich osób które lubią obrazek pola w bazie id_obrazek - nr id obrazka Wiem że problem jest dokładnie tutaj Kod WHERE id in (SELECT id_obrazek FROM loveit HAVING count(loveit.id) > 3 ) Bo gdy usunę tę cześć działa bez problemu. Czy jest ktoś w stanie mi pomóc w jaki sposób mogę to zoptymalizować? Ten post edytował Natalka 15.05.2011, 14:08:14 |
|
|
|
Natalka Optymalizacja zaawansowanego zapytania 15.05.2011, 14:03:01
melkorm Spróbuj tak:
[SQL] pobierz, plaintext SELECT * FRO... 15.05.2011, 14:10:19
Tomplus Być może sprawa nie dot. zapytania,tylko samej baz... 15.05.2011, 14:12:06
Natalka Już testuję Twoje zapytanie
/** sprawdzone **/
... 15.05.2011, 14:13:26
melkorm Załóż indeksy na : user_id ( w obu tabelkach ) , i... 15.05.2011, 14:23:49 
Natalka Cytat(melkorm @ 15.05.2011, 15:23:49 ... 15.05.2011, 14:37:43
melkorm Jest sporo wartościowych tekstów w internecie na t... 15.05.2011, 14:37:54 
Natalka Cytat(melkorm @ 15.05.2011, 15:37:54 ... 15.05.2011, 14:44:20
melkorm CytatNie dla wszystkich łączenie kilku tabel to d... 15.05.2011, 14:50:20
fifi209 Dla autora tematu pozwolę sobie zalinkować do vide... 15.05.2011, 14:53:21 ![]() ![]() |
|
Aktualny czas: 22.12.2025 - 23:33 |