Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] sortowanie wg wartości średniej 2 kolumn, wyniki są na końcu
pjanek
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 1.03.2007

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


Witam,
chciałbym prosić o pomoc przy sortowaniu tabeli chodzi oto że:
sortuję tabelę wg wartości średniej dwóch kolumn
  1. <?php
  2. ... WHERE f.id=e.id ORDER BY (f.total_value/f.total_votes) DESC ...
  3. ?>

wynik oczywiście uzyskuję ale na końcu, tz mam załóżmy 50 rekordów, do 5 została dodana ocena i w pierwszej kolejności są wyniki w których pole f.total_value ma wartość 0, a dopiero ostatnie 5 rekordów jest posortowane. Jeśli dam sortowanie ASC zamiast DESC to zmienia sortowanie ale również na końcu czyli najpierw 45 rekordów tam gdzie jest 0, a dopiero ostatnie 5 jest posortowane.
Oczywiście domyślne wartości w tych kolumnach to 0, jak zrobić aby te wyniki gdzie zostały oddane głosy były rzeczywiście na pierwszych miejscach, a dopiero później za nimi te gdzie nie oddano głosów??
proszę o wskazówki
z góry dziękuje
pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kris2
post
Post #2





Grupa: Zarejestrowani
Postów: 150
Pomógł: 3
Dołączył: 15.08.2007

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


  1. SELECT id, costam*2 AS costam FROM tabela WHERE id>5
  2. UNION
  3. SELECT id, costam*4 AS costam FROM tabela WHERE id<=5


taki przykład, mysle że kumasz

http://en.wikipedia.org/wiki/Union_(SQL) - googlanie nie boli
Go to the top of the page
+Quote Post
pjanek
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 1.03.2007

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


Cytat(kris2 @ 1.10.2007, 10:16:52 ) *

widzisz aby szukać trzeba wiedzieć co, ja wtedy jeszcze nie widziałem co mam szukać!
Ok może i UNION jest rozwiązaniem ale to ingerencja w zapytanie przed WHERE które mam już skonstruowane i na tym zapytaniu oparte całe wyniki wyszukiwania, wiele by mi to skomplikowało, natomiast chciałbym uzyskać właściwy efekt wpisując odpowiedni warunek czyli po WHERE.
Czy jest to możliwe? Czy może szukam czegoś niemożliwego, proszę o odpowiedz.
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: 24.12.2025 - 07:08