Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 23.09.2007 Skąd: Tarnobrzeg Ostrzeżenie: (0%)
|
Witam (IMG:style_emoticons/default/smile.gif) Mam problem. Muszę optymalnie wyciągnąć z tabeli 20 rekordów o największej wartości w kolumnie uzyt_szacunek. Powiedzmy, że tabela ma 10.000 rekordów. Co zrobić, żeby zapytanie było wykonywane jak najszybciej?
Wystarczy dodać index na uzyt_szacunek? Czy trzeba zrobić coś innego? Będę wdzięczny za pomoc. Zapytanie wygląda w ten sposób:
|
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk |
Cytat Wystarczy dodać index na uzyt_szacunek? A spróbowałeś? |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 23.09.2007 Skąd: Tarnobrzeg Ostrzeżenie: (0%)
|
Tak, dodałem go, tylko, że na razie w bazie mam kilka rekordów. A dodać kilka tysięcy zajęłoby mi trochę czasu, więc dlatego wolę zapytać ludzi którzy mają na ten temat pojęcie.
|
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk |
wygyneruj sobie troche losowych i sprawdzisz. Ale generalnie będzie ok.
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 27 Pomógł: 0 Dołączył: 23.09.2007 Skąd: Tarnobrzeg Ostrzeżenie: (0%)
|
Wielkie dzięki za pomoc (IMG:style_emoticons/default/winksmiley.jpg)
Zapuściłem pętlę, stworzyłem 16k rekordów. Czas wykonania zapytania:
Przed dodaniem indeksu: Pokaż rekordy 0 - 29 (16 390 wszystkich, Wykonanie zapytania trwało 0.1229 sekund(y)) Po dodaniu indeksu: Pokaż rekordy 0 - 29 (16 390 wszystkich, Wykonanie zapytania trwało 0.0010 sekund(y)) Komentować chyba nie muszę (IMG:style_emoticons/default/smile.gif) Ten post edytował Paziu 26.09.2010, 09:29:22 |
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 23:02 |