Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sortowanie daty dodania newsu
Forum PHP.pl > Forum > Bazy danych > MySQL
Spyder
Witam

Mam date w tabeli w formacie 21/07/2005 i zapytanie

SELECT title,description,category,home,picture,date FROM news WHERE category='news' ORDER BY date DESC

Ale nie dziala poprawnie mysle ze jest problem z rozpoznaniem formatu daty czy ktos mi moze pomoc z tym...
prond
Możliwe, że przechowujesz datę w postaci stringa. Jeśli tak to musisz to przekonwertować. Jak nie chcesz tego robić na stałe wystarczy konwersja w zapytaniu:
  1. SELECT title,description,category,home,picture,date FROM news WHERE category='news' ORDER BY STR_TO_DATE(date, '%d/%m/%Y') DESC;
Spyder
Nie to pomieszalo mialem tak i bylo prawie dobrze ale tez nie idealnie:

  1. SELECT title,description,category,home,picture,date,DATE_FORMAT(date,'%d.%m.%Y') FROM news WHERE category='private_sector' ORDER BY date DESC


Moze cos innego ?

ok po poprawce dziala thx

To jeszcze zeby po wysortowaniu pokazalo mi wszystkie newsy z data wieksza od 2006

  1. <?php
  2. SELECT * FROM news WHERE category='news' ORDER BY STR_TO_DATE(date, '%d/%m/%Y') DESC
  3. ?>


cos w stylu

  1. <?php
  2. SELECT * FROM news WHERE category='news' AND DATE_FORMAT(date, '%d/%m/%Y') > 12/31/2006 ORDER BY STR_TO_DATE(date, '%d/%m/%Y') DESC
  3. ?>


to oczywiscie nie dziala
prond
  1. SELECT
  2. *
  3. FROM news WHERE category='news' AND YEAR(STR_TO_DATE(date, '%d/%m/%Y')) >= 2006
  4. ORDER BY STR_TO_DATE(date, '%d/%m/%Y') DESC
Spyder
No bomba dzieki jestes wielki winksmiley.jpg
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-2024 Invision Power Services, Inc.