Mailinglisten-Archive |
Hallo, >> Deswegen tendiere ich zu MySQL- >> DATETIMEs, deren Handhabung auch nicht so schwer ist: >> - Einf=FCgen mit now() >> - Auslesen mit DATE=5FFORMAT() >> - elegantes Abfragen in SQL-Kommandos > >Das stimmt schon, aber wenn ich zum Beispiel die Dauer eines Events ber= echnen >will, muss ich beide Daten auslesen und umst=E4ndlich voneinander abzie= hen, >wobei ich Tage, Stunden, etc extra berechnen muss (korrigiert mich, wen= ns >einfacher geht...). Es geht einfacher, vor allem geht sehr viel, ich bin immer wieder "begeistert", was die "date and time functions" im MySQL-Handbuch so hergeben an Abfragenm=F6glichkeiten, hier nur mal andeutungsweise Dein B= eispiel: select to=5Fdays(start)-to=5Fdays(end) from events Hinzu kommen Intervallabfragen, optionale Monats-, Tages-, Wochen- oder Jahresumrechnungen, um deren Syntax man sich nicht umst=E4ndlich selber k=FCmmern muss... >Das stimmt auch wieder... allerdings ist in den meisten F=E4llen der SQ= L-Server >und der Webserver ein und dieselbe Maschine, deswegen d=FCrfte sich das= die >Waage halten... Der Unterschied ist nur der: ist deine SQL-Abfrage erstmal in MySQL geparst (was sowieso passieren muss) f=FChrt MySQL deine Abfrage nativ a= us (also in compilierten C-Code). Selbst die schnellste Zend-Engine kommt nicht an diese Performance beim Interpretieren deines php-codes heran! >Ich denke, wenn es keine wesentliche Nachteile beinhaltet, werde ich de= n >UNIX-Timestamp nehmen, da ich bequem nach auf- / absteigenden Daten sor= tieren Folgendes Beispiel: du m=F6chtest nach Eventdauern sortieren - wenn Du d= as selber =FCber TIMESTAMP-Differenzen machst musst du ein Feld aufbauen, d= as PHP dann sortieren muss - das Aufbauen und Sortieren ist deutlich langsamer (und du mu=DFt selber Zeit zum Coden investieren) als folgende= Abfrage: select to =5Fdays(start)-to=5Fdays(end) as dauer from events order by da= uer >Gibts noch Argumente, die mich zum DATETIME-Format bringen k=F6nnten ;-= ) Hunderte ;) -- Oliver Michalak www.werk01.de / omich_(at)_werk01.de / 0(049)177 - 75 75 393
php::bar PHP Wiki - Listenarchive