Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> LIMIT - optymalizacja zapytań po indeksie
armon
post
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 1
Dołączył: 24.09.2009

Ostrzeżenie: (0%)
-----


Witam,

Czy
  1. SELECT pole FROM tabela WHERE id = 1 LIMIT 1

jest szybsze od
  1. SELECT pole FROM tabela WHERE id = 1


gdy id jest primary key lub też unique?

Wiem, że bez indeksu na pewno jest szybsze, ponieważ po znalezieniu jednego rekordu nie trzeba przeszukiwać następnych.

Lecz z indeksem unikalnym samo z siebie wynika, że to się już nie powtórzy? więc chyba nic nie przyspieszy?

Rozumiem, że z normalnym INDEX (bez unique), LIMIT 1 przyspiesza zapytanie?

Myślę nad ustawieniem w bazie danych login na klucz unique, oraz login i hasło na klucz złożony INDEX. Na samo hasło nie będę nakładał indeksu bo po co w końcu jakieś tam szansę powtórzenia ma.

Tak więc wybierają później
  1. SELECT id FROM tabela WHERE login = 'loginek' AND haslo = 'cryptedwhirlpoolthing' LIMIT 1


Najlepiej dodać do końca LIMIT 1 tak?

Ten post edytował armon 20.09.2011, 08:51:42
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




limit na pewno nie zaszkodzi ani nie spowolni więc poprostu dodaj jeśli wiesz, ze chcesz pobrać max 1 rekord.
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(nospor @ 20.09.2011, 10:05:10 ) *
limit na pewno nie zaszkodzi ani nie spowolni więc poprostu dodaj jeśli wiesz, ze chcesz pobrać max 1 rekord.

Jakiś czas temu zastanawiałem się jak działa LIMIT. Wydaje mi się, że wycina ze zbioru wynikowego pewną porcję danych. Najpierw wykonuje się zapytanie z warunkami i sortowaniem, a potem odpalany jest LIMIT. Jeśli tak jest to jakiś narzut (pewnie śmiesznie mały, ale jednak) będzie by zamiast od razu zwrócić dane to jeszcze wyciąć z nich żądaną porcję. Jeśli ktoś ma w tej dziedzinie wiedzę to proszę o info - chciałbym wiedzieć jak to działa, tak z czystej ciekawości.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 12:32