php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.11.2007, 16:46  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard Nach Datum sortieren

Hy zusammen,

habe jetzt des längeren recheriert um meine Daten, welche in einer Mysql Datenbank abgespeichert sind nach Datum zu sortieren. Alle Beiträge handeln nur über timestamp und einem Feld im date Format.
Mein Datumformat in der Datenbank ist: 24.12.2006 und ist im Feld datum genauso gespeichert. Dieses Feld ist aber varchar() und nicht date().
Kann ich das irgendwie sortieren nach datum indem ich das datum zuerst umwandle in einen timestamp und dann erst sortiere?
oder hat jemand eine andere Lösung?
Danke
zoro ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 26.11.2007, 16:53  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Unbedingt DATE verwenden. Zum Konvertieren musst du mal gucken, ob du mit SUBSTRING etwas gebacken bekommst. Andere Funktionen zum Umwandeln fallen mir grad nich ein, gibts aber bestimmt auch.
Zergling-new ist offline   Mit Zitat antworten
Alt 26.11.2007, 16:54  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

[verschoben nach mysql > nächstes mal bitte Thema beachten]

Nein, ORDER BY bezieht sich immer auf eine Spalte, nicht auf einen Ausdruck.
[EDIT] Bitte vergessen, siehe unten.

Warum ergänzt Du Deine Tabelle nicht um einen Timestamp/Datetime (mittels UPDATE geht das Eintragen mit der richtigen Stringfunktion automatisch) oder gibst die Daten wenigstens im YYYY-mm-dd Format an?


STR_TO_DATE()

LEFT()
RIGHT()
SUBSTRING()
nikosch ist offline   Mit Zitat antworten
Alt 26.11.2007, 16:58  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

würde ja gerne eine spalte hinzufügen, nur habe ich schon über 100 einträge in der datenbank. kann ich eine spalte timestamp hinzufügen und in diese automatisch den jeweiligen timestamp für das datum jener zeile hineinspeichern? mein datumfeld ist nicht im date format!!
zoro ist offline   Mit Zitat antworten
Alt 26.11.2007, 17:02  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Schon klar. Und wie gesagt, ja. Füge die Spalte hinzu, mache ein Update bspw. mit der obigen STR_TO_DATE() Funktion. Datetime Spalten werden fortan bei Neueinträgen sogar automatisch gefüllt.
nikosch ist offline   Mit Zitat antworten
Alt 26.11.2007, 17:41  
Benutzer
 
Registriert seit: 11.09.2006
Beiträge: 48
zoro
Standard

habe in der mysql datenbank unter sql folgenden befehl ausgeführt:

update `meinetabelle` set `datum` = STR_TO_DATE(`datum`, '%d.%m.%y');

und aus 26.11.2007 wurde 2020-11-26

das feld ist aber varchar() geblieben

was habe ich falsch gemacht und wie mache ich das mir in der spalte "datum" mein wert bleibt und in der neuen spalte "timestamp" mein zeitstempel abgespeichert wird?
zoro ist offline   Mit Zitat antworten
Alt 26.11.2007, 18:03  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

2007 -> 2020

http://dev.mysql.com/doc/refman/5.1/...functions.html
%y Jahr, numerisch, zweistellig
Zergling-new ist offline   Mit Zitat antworten
Alt 27.11.2007, 01:28  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Ich sag doch: Füge eine Spalte hinzu.
nikosch ist offline   Mit Zitat antworten
Alt 28.11.2007, 12:48  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch77
...ORDER BY bezieht sich immer auf eine Spalte, nicht auf einen Ausdruck.
Wo hast du das denn her?
Zitat:
Zitat von [url=http://dev.mysql.com/doc/refman/5.1/de/select.html
13.2.7. SELECT[/url]]...
ORDER BY {col_name | expr | position}
...
__________________
Gruss
L
lazydog ist offline   Mit Zitat antworten
Alt 28.11.2007, 14:00  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Oh sorry, habe ausnahmsweise das BUCH benutzt, weil ich mir nicht sicher war. Gerade gesehen, die Syntax ist da tatsächlich schlecht beschrieben:

Zitat:
Zitat von MySQL kurz & gut
ORDER by Spalte [ASC|DESC] [, Spalte2 [ASC|DESC], ...]
... Beschreibung ...
Ist ja enttäuschend für ein Referenzhandbuch. Stehen tuts dann erst im letzten Satz:

Zitat:
Zitat von MySQL kurz & gut
Wie bei GROUP BY kann der Spaltenname an Stelle eines Spaltennamens eine vorzeichenlos ganze Zahl* oder eine Formel sein.
*) Hier hätts allerdings Klick machen müssen, denn die Spalten kann man auch über ihren Index angeben.
.
nikosch 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
[JS] Divs nach Datum sortieren cycap JavaScript, Ajax und mehr 24 16.07.2008 18:48
Dateien nach Datum sortieren ddog PHP Tipps 2008 4 09.03.2008 10:11
Erst nach Typ, dann nach Datum sortieren iRadiaX Datenbanken 7 05.03.2006 07:16
Sortieren nach Datum flual2000 PHP Tipps 2005-2 2 18.10.2005 10:41
Ordnerausgabe nach Ordnername (Datum) sortieren... PHP Tipps 2005-2 6 05.07.2005 19:18
Ordner auslesen, Ausgabe nach dem Datum sortieren PHP Tipps 2005-2 10 02.07.2005 17:18
[Erledigt] Datum RICHTIG sortieren Datenbanken 8 14.05.2005 22:52
Tabelle nach Datum sortieren? PHP Tipps 2005 10 29.03.2005 16:02
News nach Datum sortieren maximus PHP Tipps 2005 2 10.02.2005 15:33
Sortieren nach Datum Datenbanken 2 30.01.2005 11:21
Daten einer Textdatenbank nach Datum sortieren PHP Tipps 2004-2 10 20.11.2004 11:29
Datum sortieren? PHP Tipps 2004 2 18.09.2004 19:11
Sortieren nach Datum (tt.mm.yyy) seb-web PHP Tipps 2004 1 18.09.2004 00:59
[Erledigt] Nächsten Geburtstag ausgeben (Datum sortieren) Datenbanken 6 05.09.2004 20:48
[Erledigt] nach datum sortieren PHP Tipps 2004 4 27.07.2004 16:13

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php datum sortieren, javascript datum sortieren, mysql datetime richtig sortieren, nach datum sortieren html, mysql date format deutsch sortieren, nach datum sortieren mysql php, sortieren str_to_date, datenbank nach datum ausgeben, datetime feld sortieren mysql, str_to_date nach jahr, order by str_to_date nach jjjj, mysql str_to_date sortieren, sql update datetime mysql str_to_date, mysql nach date sortieren, datei nach datum anzeigen php, php varchar date sortieren, mysql nach datum sortieren, php mysql nach datum sortieren, php mysql sortieren nach datum, php sort($string nach datum in db

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:01 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.