Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z sortowaniem, Uzyskanie kolejności 9-1dan 1-30kyu
amwoan
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2005

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


Witam,

Mam pewną tabelę zawodników, która zawiera m. in. dwie kolumny określające siłę zawodnika: `sila_typ` i `sila_wart` oraz kolumnę określającą status: `status`.
Pole `sila_typ` może przyjmować wartości: 'dan' lub 'kyu', `sila_wart` to po prostu jakaś liczba, a `status` może być 'active', bądź 'inactive'.

Kolejność sił przedstawia się następująco (od najsilniejszego do najsłabszego):
9dan, 8dan, ... 1dan, 1kyu, 2kyu, ... 30 kyu.

I teraz mój problem:
Chciałbym wybrane rekordy z bazy posortować w następujący sposób:
- najpierw względem statusu (na początku 'active', później 'inactive' - to oczywiście banalne)
- następnie wg siły (od najsilniejszego do najsłabszego - i tu pojawia się problem, ponieważ kolejność wartości sił jest różna dla 'dan' i 'kyu')

Czy jest to w ogóle wykonalne przy pomocy jednego zapytania SQL (bez użycia unii)?

Z góry dziękuję za wszelkie sugestie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Wave
post
Post #2





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 13.01.2005

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


Ja bym próbował przypisać przed watrości bazy numery okerslajace poziom. Np. 1.9dan, 2.8dan, 3.7dan, 4.6dan, 5.5dan, 6.4dan, 7.3dan, 8.2dan, 9.1dan, 10.1kyu, 11.2kyu itd...
Tak widzę najprostrze rozwązanie.
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: 13.10.2025 - 20:00