![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 54 Pomógł: 0 Dołączył: 7.11.2004 Ostrzeżenie: (40%) ![]() ![]() |
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. |
|
|
![]() |
![]()
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'
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 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 10:39 |