Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zliczanie największejw wartości
TakiJakis
post
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 7.11.2004

Ostrzeżenie: (40%)
XX---


Załóżmy, że jest tabela TEST o 'polach' id i 'wartosc'.

Jak JEDNYM zapytaniem znalezc rekord(y), ktory ma najwieksza 'wartosc', tak zeby wynik zapytania zawieral takze wartosc pola 'id'. Rekordów o największej 'wartosc' moze byc kilka.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
BaN
post
Post #2





Grupa: Zarejestrowani
Postów: 158
Pomógł: 43
Dołączył: 9.11.2007

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


To było jedno zapytanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Rozumiem, że chciałyś aby nie było podzapytania. Moim zdaniem za pomocą jednego selekta nie da się.

Jeżeli wiesz, że tych wartości maksymalnych nie będzie np. więcej niż 10, to można ewentualnie wykonać zapytanie z malejącym sortowaniem po polu 'wartosc'
  1. SELECT id,wartosc FROM tabela ORDER BY wartosc DESC LIMIT 10


Pierwszy rekord otrzymany w wyniku tego zapytania ma na pewno wartość maksymalną, pozostałe rekordy można ewentualnie z nim porównać.

Ale moim zdaniem zapytanie, które podałem wcześniej jest optymalne o ile na polu wartosc jest założony indeks
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: 3.10.2025 - 10:39