Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Podwójne ORDER BY
Forum PHP.pl > Forum > Przedszkole
rangoo
Witam.

W jaki sposób mogę zrobić podwójne ORDER BY? (najpierw sprawdza pierwsze pole, a potem jak są równe to drugie)

Np.
id | pole1 | pole2
----------------------
1 | 1 | 1
2 | 1 | 2
3 | 0 | 2
4 | 0 | 1
5 | 0 | 3
6 | 1 | 3

uporządkuje na:
id | pole1 | pole2
----------------------
6 | 1 | 3
5 | 0 | 3
2 | 1 | 2
3 | 0 | 2
1 | 1 | 1
4 | 0 | 1

Z góry dzięki smile.gif
wiiir
  1. .... ORDER BY pole1 , pole2


dodaj jeszcze "desc" bo widze ze chcesz malejaco
modern-web
Lub jeśli chcesz posortować go wg pola 1 i pola 2 ale z polem 1 uwzględnić malejąco/rosnąco to może warto spróbować także tak:

  1. ... ORDER BY pole1 DESC, pole2 ...


Pzdr.
irek1
Witam, chciałem zapytać o trochę bardziej skomplikowaną sytuację, ale powiązaną z tym tematem.

Mam takie zapytanie:

SELECT * FROM adverts WHERE status = 1 GROUP BY(id_position) ORDER BY id_position, RAND() LIMIT 5

Zapytanie wyświetla 5 reklam w posortowanej kolejności. I chciałem jeszcze żeby gdy reklama ma te same ID_position wybierał losowo ale tylko dla konkretnego id_position.
Próbowałem z tym : " ORDER BY id_position, RAND() " - ale zawsze te same zwraca.

Czy ktoś pomoże?
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.