![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 1 Dołączył: 31.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
witam, mam dane typu:
Kod 0,2,3 0,2,5 0,4,1 0,10,2 chciałbym jes posortowac właśnie wtaki sposób jak napisałem, mysql sortuje mi je tak: Kod 0,10,2 0,2,3 0,2,5 0,4,1 Macie jakiś pomysł? -------------------- |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%) ![]() ![]() |
Hm troche dziwne masz te dane ulozone i normalnie to sie tak nie da. Mozna by bylo explode zrobic jakas tabele tymczasowa i wtedy sorta ele to jest nieoptymalne. Wydaje mi sie ze mozna by bylo troszeczke inaczej przebudowac tabele.
Te dane ktore podales to varchar? -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 1 Dołączył: 31.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
tak (varchar).
nie chodzi bynajmniej o optymalizacje (bo to przykład raczej akademicki) -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
-------------------- The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1 MySQL Client API version : 5.0.27 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 1 Dołączył: 31.08.2005 Ostrzeżenie: (0%) ![]() ![]() |
dane: 0,10,2 są w jednej kolumnie
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 10 Dołączył: 8.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ciekawej rzeczy oczekujesz od bazy danych - ma się domyślić, że ten string to liczby oddzielone przecinkami.
Jeżeli ilość liczb w tym stringu jest stała to możesz je wyciągnąć używając np SUBSTRING_INDEX, następnie zrzutować na liczby przy pomocy CAST ( cos AS UNSIGNED)
i dopiero posortować. Jak szukasz akademickiego rozwiązania tego problemu polecam Ci przejść na PostgreSQL. Tam możesz zrobić coś takiego:
-------------------- --------------------------------------------------------------------------------
weblog.axent.pl -------------------------------------------------------------------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 00:58 |