php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.12.2011, 15:47  
Neuer Benutzer
 
Registriert seit: 06.02.2011
Beiträge: 13
PHP-Kenntnisse:
Anfänger
Cector befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Datum (varchar) sortiert ausgeben - MySQL

Hallo zusammen,

folgendes Problem habe ich..
In einer Tabelle habe ich Monat und Jahr als String gespeichert in folgender Form:

01/2011
02/2011
03/2011
04/2011
05/2011
06/2011
01/2012
02/2012
03/2012

Wie schaffe ich es das ich die werte Sortiert ausgegeben bekomme?
Im Moment sieht das folgendermaßen aus:

01/2011
01/2012
02/2011
02/2012
03/2011
03/2012
04/2011
05/2011
06/2011

Ist eine Formatierung überhaupt möglich?
Cector ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.12.2011, 16:11  
Erfahrener Benutzer
 
Registriert seit: 07.12.2009
Beiträge: 843
PHP-Kenntnisse:
Fortgeschritten
chorn befindet sich auf einem aufstrebenden Ast
Standard

Du kannst da sicher irgendwie mit Stringfunktionen rumhampel - einfacherer, schneller und zukunftsweisender ist allerdings das z.B. per Script nach Datetime zu konvertieren und ab sofort auch in eine Spalte vom Typ Datetime zu speichern.
chorn ist offline   Mit Zitat antworten
Alt 22.12.2011, 16:21  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Stimme chorn zu, ein "echtes" Datumsformat löst derartige Probleme fast von selbst, und bietet darüber hinaus Zusatz-Nutzen (länderspezifische Formatierung, rechnen mit Datum- und Zeitspannen, ..)

Ein varchar Datum lässt sich nur sortieren, wenn man die "umgedrehte" Schreibweise benutzt: YYYYMMDD. Trennzeichen dürfen optional verwendet werden, solange es immer das gleiche Trennzeichen ist (YYYY/MM/DD, YYYY-MM-DD, YYYY.MM.DD)
Ansonsten ist es zwingend notwendig, mit führenden Nullen zu arbeiten bei Monaten/Tagen < 10, anderenfalls stünde der Monat 9 (September) vor der 10 (Oktober) - es wird zeichenweise verglichen!

2011/12/31
2011/09/03
2010/10/30
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 22.12.2011, 16:37  
Neuer Benutzer
 
Registriert seit: 06.02.2011
Beiträge: 13
PHP-Kenntnisse:
Anfänger
Cector befindet sich auf einem aufstrebenden Ast
Standard

Danke für die raschen Antworten..
Ich habe es jetzt mit der Substring funktion geschafft.

Auf Dauer wird es aber tatsächlich sauberer sein das direkt als Datum zu speichern.
Cector ist offline   Mit Zitat antworten
Alt 22.12.2011, 16:39  
Erfahrener Benutzer
 
Registriert seit: 21.12.2009
Beiträge: 415
PHP-Kenntnisse:
Fortgeschritten
G.Schuster ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Und falls ändern nicht geht:
Code:
SELECT *, CONCAT(SUBSTR(`date`, 3, 4), '-', SUBSTR(`date`, 0, 2)) AS `reversedDate`
      FROM `tabelle` ORDER BY `reversedDate`
__________________
actra.development - Schwabstr. 2 - 70825 Münchingen
www.actra.de/velopment/ - eMail: php.de@actra.de
Zend Certified Engineer for PHP5
G.Schuster ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL Tabelleninhalt ausgeben toxyurl PHP Tipps 2010 4 02.04.2010 22:22
[Erledigt] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
mysqli_multi_query lässt Eintrag aus... Samhayne Datenbanken 8 07.02.2010 19:02
Ausgabe nach Datum sortiert ausgeben Cetax PHP Tipps 2009 14 18.10.2009 14:38
ausgeben von mehreren tabellen mysql SpecialFighter PHP Tipps 2009 9 15.10.2009 18:41
Datum vergleichen in MySQL oriolus PHP Tipps 2009 3 28.08.2009 12:45
[Erledigt] MySQL / Select mit Datum vom Vortag Delirius Datenbanken 7 08.07.2009 18:53
Differenz von Datum in MySQL Gibson PHP Tipps 2009 8 06.04.2009 14:06
[Erledigt] Datensätze nach Datum sortieren und nächstes Datum ausgeben kinerdar Datenbanken 2 12.09.2008 12:00
[Erledigt] Datum Ausgabe Mysql krackmoe PHP Tipps 2008 9 10.07.2008 20:33
aktuelles Datum in MySQL datenbank einfügen L.Croft PHP Tipps 2006 11 11.08.2006 23:19
[Erledigt] VARCHAR datum -&gt; mysql Timestamp ? Datenbanken 2 20.02.2006 22:04
Daten nach Datum sortiert ausgeben LordAvalon Datenbanken 11 11.10.2005 16:24
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
ausgeben nach datum möchtegernchegga PHP Tipps 2005 8 04.05.2005 17:22

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sortieren datum vergleichen mysql, php datum varchar vergleichen, php aus varchar datum, php mysql varchar nach datum sortieren, php datum varchar sortieren, varchar mit datum vergleichen mit php, mysql datum nach varchar, php mysql sortieren nach datum varchar

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:17 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum