![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 1 Dołączył: 19.09.2006 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam tablicę, do której trafią wartości w trzech formatach:
2121 (sama liczba) 2121-1 (liczba - liczba) 121-1212-1211 (liczba - liczba - liczba) w jaki sposób posortować tą tablicę aby została posortowana wg pierwszej liczby (bez znaczenia czy dalej jest myślnik) np. dla 4 wartości: 2121 124-2 150-1245-1265 134 wyskoczyło by 124-2 134 150-1245-1265 2121 ? Pozdrawiam. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 106 Pomógł: 1 Dołączył: 2.12.2005 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
po stronie PHP zrobiłbym to tak, że explodowałbym te rekordy znakiem "-" i sortował tylko te pierwsze wyrazy. Po posortowaniu trzeba by połączyć właściwie te rozdzielone wyrazy. Nie napiszę tego, bo nie mam czasu, ale ideowo tak to widzę. Po stronie SQL nie mam pojęcia jak to zrobić, ale możesz poszukać coś o funkcjach pobierających tylko kilka pierwszych znaków danego rekordu (o ile takie istnieją) i wtedy sortować.
A tak nawiasem mówiąc to przechowywanie danych w taki sposób oznacza, że masz bazę nieznormalizowaną - czytaj tutaj |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 14:23 |