Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Order by po trzech kolumnach - czy ja już do reszty zdurniałem?
c2h5oh
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 1
Dołączył: 6.10.2006

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


Pomijając kwestię czy jest to rozsądne potrzebuje w jednym miejscu posortować wyniki selecta po trzech kolumnach:
Kod
SELECT * FROM `table` ORDER BY col1 DESC, col2 ASC, col3 DESC LIMIT 0,10

lub coś zbliżonego

niestety sortuje tylko po col1 i col2 - col3 zlewa zupełnie. Ograniczenie mysql 4.1, czy co? nie znalazłem w sieci ani jednego przykładu na order by z 3 kolumnami..

Wszelkie sugestie mile widziane.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
c2h5oh
post
Post #2





Grupa: Zarejestrowani
Postów: 29
Pomógł: 1
Dołączył: 6.10.2006

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


To jeszcze udziwnię, żeby do było zabawniej:

  1. SELECT p.*, COUNT(t.tid) AS matches FROM `product` p
  2. INNER JOIN `product_tag` t ON p.pid=t.pid WHERE ( (`tid` IN (1,4,5)) AND (p.status>=2))
  3. GROUP BY t.pid ORDER BY matches DESC, p.STATUS ASC, p.pid DESC LIMIT 0, 10


Nie działa

  1. SELECT p.*, COUNT(t.tid) AS matches FROM `product` p
  2. INNER JOIN `product_tag` t ON p.pid=t.pid WHERE ( (`tid` IN (1,4,5)) AND (p.status>=2))
  3. GROUP BY t.pid ORDER BY matches DESC, p.STATUS ASC, p.pid ASC LIMIT 0, 10


Smiga bez problemu

Czy ktos ma jakiekolwiek pojecie o co biega?
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 - 09:21