#1 29. Juni 2009 ORDER BY TIME Halli Hallo, ich habe mal ne Frage.. hab schon gegoogelt gehabt und die meinten man müsste den String zerlegen... Ich hab ne Tabelle als VARCHAR mit dem Inhalt 16.45, 3.15, 8.00, 10.45, 7.30, 14.15 Nun will ich das ganze aber in der Zeitlichen Reihenfolge ausgeben! Mit ORDER BY zeit ASC funktioniert das so nicht! Kann mir da jmd weiter helfen? Lg
#2 29. Juni 2009 AW: ORDER BY TIME Hey, dafür gibt es ja extra das Datenbankfeld TIME. Am einfachsten würdest dus dir machen, wenn du die alle umkonvertierst. Einfach kleines PHP-Script, was alle Datensätze ausliest das Format umwandelt und sie wieder in ein extra Feld einfügst. Hiermal ein kleiner Script-Ansatz: PHP: <? php $mysql = new mysqli ( $host , $user , $pw , $db ); $daten = $mysql -> query ( "SELECT * FROM tabelle;" );while( $datensatz = $daten -> fetch_assoc ()){ $neues_feld = str_replace ( "." , ":" , $datensatz [ 'altes_feld' ]); $neues_feld = $neues_feld . ":00" ; $mysql -> query ( "UPDATE tabelle SET neues_feld = '" . $neues_feld . "' WHERE id(oda sowas) = '" . $datensatz [ 'id(oda sowas)' ]. "';" );} ?> Hoffe hab das alles so richtig verstanden und konnte dir helfen Gruß Blackbird
#3 29. Juni 2009 AW: ORDER BY TIME in deinem fall wäre "FLOAT" als feldtyp ausreichend. dann würde "ORDER BY zeit ASC|DESC" korrekt funktionieren.
#4 29. Juni 2009 AW: ORDER BY TIME danke für die hilfe werds glei mal probieren! okay danke funktioniert.. hab nicht um "die ecke" gedacht noch ein "problem" wenn ich jetzt 8.00 eingebe schreibt er mir nur 8 in die tabelle?! kann man das verhindern?
#5 29. Juni 2009 AW: ORDER BY TIME via number_format PHP: print number_format ((float) 11 , 2 , ':' , ':' ); // 11:00 ich persönlich verwende bei zeitangeben IMMER timestamps. damit kann man super rechnen und man is ned von mysql abhängig (wegen den ganzen zeitfunktionen)
#6 29. Juni 2009 AW: ORDER BY TIME wenn du ein autoincrement wert hast, kannst du theoretisch auch nach diesem sortieren. dann musst du nicht nach der zeit sortieren.
#7 29. Juni 2009 AW: ORDER BY TIME quatsch... wenn du erst n termin um 9 einträgst und dann einen um 8, danach ggf einen für 10 uhr. dann is das schwachsinn^^
#8 29. Juni 2009 AW: ORDER BY TIME /sign Ist auch meiner Meinung nach die beste Lösung. Habe ich selbst in allen meinen Script implementiert. Gruß Blackbird