Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> ORDER BY z warunkiem
Stef@n
post
Post #1





Grupa: Zarejestrowani
Postów: 191
Pomógł: 3
Dołączył: 14.08.2003

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


Witam, próbuje posortować dane z tabeli, ale trochę inaczej niż zawsze gdyż potrzebny jest warunek między dwiema kolumnami danych te kolumny to "wynik" i "dodatkowy_wynik". Teraz chce aby sortowała sie kolumna "wynik" >ORDER BY wynik ASC< ale jeśli dodatkowy_wynik jest większy od 0 a mniejszy od wynik to do sortowania ma pobierać dodatkowy_wynik. Próbowałem coś takiego, ale zero efektu:
  1. SELECT *, IF(dodatkowy_wynik > 0 AND dodatkowy_wynik < wynik) AS wynik FROM tabela ORDER BY wynik ASC


Proszę o pomoc
Go to the top of the page
+Quote Post
piotrex41
post
Post #2





Grupa: Zarejestrowani
Postów: 168
Pomógł: 26
Dołączył: 15.09.2011
Skąd: Wrocław

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


Takie coś to chyba z użyciem JOINa się robi. Poczytaj o LEFT JOIN, RIGHT JOIN i INNER JOIN. Wtedy możesz łączyć dwie tabele (bo o to Ci chodzi jeśli dobrze zrozumiałem). A jeśli nie dwie tabele a po prostu dwie wartości kolumn to chyba tak powinno działać:

Kod
SELECT `*` FROM `tabela` WHERE `dodatkowy_wynik` > '0' AND `dodatkowy_wynik` < `wynik` AS `wynik` ORDER BY `wynik` ASC
Go to the top of the page
+Quote Post
Stef@n
post
Post #3





Grupa: Zarejestrowani
Postów: 191
Pomógł: 3
Dołączył: 14.08.2003

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


Chodzi o sortowanie 2 kolumn jednej tabeli z zastosowaniem tego warunku co opisałem wyżej. To co pokazałeś nie działa
Go to the top of the page
+Quote Post
redeemer
post
Post #4





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

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


Może tak:
  1. SELECT *, IF(dodatkowy_wynik > 0 AND dodatkowy_wynik < wynik, dodatkowy_wynik, wynik) AS wynik FROM tabela ORDER BY wynik ASC
Go to the top of the page
+Quote Post
Stef@n
post
Post #5





Grupa: Zarejestrowani
Postów: 191
Pomógł: 3
Dołączył: 14.08.2003

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


Dzięki działa (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 12:15