Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: pytanie o funkcję MAX
Forum PHP.pl > Forum > Bazy danych
nieraczek
MAX zwraca największą wartość, co się dzieje jednak gdy mamy dwie identyczne wartości największe, zwraca je obie czy tylko którąś jedną ?
href
tak ciężko sprawdzić samemu? ; ) MAX w takim przypadku zwróci tylko jedną wartość bo i po co miałoby zwracać dwie?
nieraczek
chociażby po to żeby nie skłamać, bo pokazując 1 wartość podczas gdy mamy 2 identyczną wartość jest oszustwem smile.gif hehheheheheh, dzięki za odpowiedź smile.gif
styx
pokaż swoje zapytanie to się je przerobi żeby zwracało wiecej rekordów z maksymalnymi wartościamii
nieraczek
nie, nie trzeba - chciałem tylko się dowiedzieć o tej funkcji MAX, ale dzięki za propozycję pomocy smile.gif
dr_bonzo
MAX() zwraca najwieksza wartosc, a nie rekordy, ktore ta najwieksza wartosc posiadaja.
beel
No to weźmy prosty przykład:

  1. SELECT max(wiek) AS [najstarszy] FROM daneosobowe


I zakładając, że w tabeli mamy dwie jednakowe (maksymalne) wartosci jak zmodyfikować polecenie aby zostaly one wyświetlone?

WITH TIES działało z TOP a tutaj?

Wiem, że mogę sobie posortować i użyć TOP właśnie, ale zostanmy przy MAX...

pzdr
Sedziwoj
jeżeli używasz funkcji agregujących możesz wyświetlać pole która jest klauzurze GROUP BY, czyli:
  1. SELECT max(wiek) AS najstarszy FROM daneosobowe GROUP BY miejscowosc

jeśli chcesz mieć najstarsze osoby to korzystasz z pod zapytania:
  1. SELECT * FROM daneosobowe RIGHT JOIN (SELECT max(wiek) AS najstarszy FROM daneosobowe) AS naj ON (naj.najstarszy = daneosobowe.wiek)

(czy coś w tym stylu)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.