Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql]segregowanie daty
Forum PHP.pl > Forum > Bazy danych > MySQL
Stef@n
Mam pytanie jak wyglada jesli to jest do wykoniania segregacja według daty ale napisanej w polu przy ustawieniach nie data ale text ona wyglada tak np. 16.10.2004 potem 11.11.2004, 19.11.2004 i tak dalej chce zeby było oczywiscie od najwczesniejszej. Prosze o pomoc :]
Indeo
Tak daty zapisują panie w urzędach smile.gif, a teraz musisz to sobie odkręcić.
Problem jest jeden - czy dzien i miesiąc jes zapisywany dwucyfrowo czyli:
01.06.2004 czy tylko tak: 1.6.2004
Ja opiszę przypadek pierwszy, drugi wymaga więcej grzebania się.

Załóżmy że twoje stare pole daty nazywa się old_data
  1. SELECT jakies_pole,
  2. concat(RIGHT(old_data,4),'-',substring(old_data,4,2),'-',LEFT(old_data,2)) AS nowa_data
  3. FROM tabela ORDER BY concat(RIGHT(old_data,4),'-',substring(old_data,4,2),'-',LEFT(old_data,2)) DESC


Najlepiej utwórz w tabeli nowe pole z datą. Następnie przypisz do tego pola wartość daty w prawidłowym formacie.
  1. UPDATE tabela SET nowa_data=concat(RIGHT(old_data,4),'-',substring(old_data,4,2),'-',LEFT(old_data,2))


Potem usuń pole w starym formacie daty
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.