Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]sortowanie po dacie, terminie
Forum PHP.pl > Forum > Przedszkole
pkania128
witam,
mam w bazie danych datę (termin) zapisywany w formacie: 22.12.2012, 10.05.2012, 25.06.2012
jak za pomocą zapytania wyświetlić wynik - datę w kolejności czyli
10.05.2012
25.06.2012
22.12.2012

w moim zapytaniu jest

  1. $zapytanie = "select * from `2012` WHERE
  2. rezerwacja = 'TAK'
  3. ORDER BY `data` DESC";


i wyświetla mi wynik:
25.06.2012
22.12.2012
10.05.2012

z góry dziękuje za pomoc i wskazówki
bostaf
Funkcja STR_TO_DATE().
  1. SELECT * FROM `2012`, STR_TO_DATE(`data`, '%d.%m.%Y') AS `data_sformatowana`
  2. WHERE rezerwacja = 'TAK'
  3. ORDER BY `data_sformatowana` DESC";
Crozin
Nie masz daty, tylko nic nieznaczący tekst. Przechowuj datę jako datę (typ kolumny: DATE), a Twoje zapytanie będzie działać poprawnie.
pkania128
niestety kombinuję ale nie działa:
nie mam pojęcia dlaczego, proszę o podpowiedzi.

a jak w bazie zmieniam date na DATE to wszystko się krzaczy, muszę mieć datę w formie testu i ją "przerobić" tak aby się dobrze wyświetlała

tak próbowałem:

  1. SELECT * FROM `2012`, STR_TO_DATE('data_platnosci_cal', '%d.%m.%Y') AS `data_sformatowana`
  2. WHERE rezerwacja = 'TAK'
  3. ORDER BY `data_sformatowana` DESC";



  1. SELECT STR_TO_DATE('data_platnosci_cal', '%d.%m.%Y') AS `data_sformatowana` * FROM `2012`
  2. WHERE rezerwacja = 'TAK'
  3. ORDER BY `data_sformatowana` DESC";


  1. SELECT * FROM `2012`
  2. WHERE STR_TO_DATE('data_platnosci_cal', '%d.%m.%Y') AS `data_sformatowana`
  3. AND rezerwacja = 'TAK'
  4. ORDER BY `data_sformatowana` DESC";
patrysiek2
W mysql masz różne typy np. TEXT i takie tam... Te pole gdzie masz datę zmień na tryb DATE
pkania128
to wiem, ale po zmianie formatuje mi się data, i zmienia te wpisy,
na razie rozwiązałem problem w inny sposób dzięki
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.