ostatnio zastanawiałem się nad komendą LIMIT w MySQL. Jestem ciekaw czy jeśli mamy zapytanie, które z góry wiemy, że wykona się tylko raz, np.: (wartość pola nie powtórzy się w innym rekordzie)
Kod
SELECT * FROM tabela WHERE pole=cos;
Lub:
Kod
UPDATE tabela SET pole2=cos2 WHERE pole=cos;
Lub:
Kod
DELETE FROM tabela WHERE pole=cos;
To czy opłaca się dodawać do tego "LIMIT 1" ?
NP:
Kod
SELECT * FROM tabela WHERE pole=cos LIMIT 1;
Lub:
Kod
UPDATE tabela SET pole2=cos2 WHERE pole=cos LIMIT 1;
Lub:
Kod
DELETE FROM tabela WHERE pole=cos LIMIT 1;
Teoretycznie wydaje mi się, że bez LIMIT 1 MySQL po napotkaniu pierwszego pasującego rekordu wykona na nim operacje, a następnie zacznie przeszukiwać resztę czy istnieje jeszcze jakiś rekord spełniający warunek WHERE.
Natomiast z LIMIT 1 po napotkaniu owego rekordu powinien przestać szukać, przez co zapytanie powinno szybciej działać i zżerać mniej zasobów.
Czy moje rozumowanie jest słuszne, czy się mylę?
Z góry dziękuję za odp.