Mailinglisten-Archive |
Sebastian Bergmann <sb_(at)_phpopentracker.de> writes: Hallo! > In einer Tabelle habe ich ein Feld TIMESTAMP vom Typ varchar(14), Warum varchar?? int wäre da doch passender, oder nicht? > Wie komme ich an alle Einträge meiner Tabelle, deren Timestamp zu einem > Sonntag oder zu einem Oktober gehört, oder aber zwischen 10:00 und 11:00 > liegt. Da kannst du dich natürlich der entsprechenden Datumsfunktionen der Datenbank bedienen. Problem: Sie heißen immer anders -> für jede DB Script anpassen. > Wie gehe ich nun am besten vor? Mit einem Feld vom Typ datetime ist mir > nur bedingt geholfen, da ich an YYYY-MM-DD HH:MM:SS wiederum nicht direkt > den Wochentag ablesen kann. datetime ist MySQL. > Was ich mir nun überlegt habe, ist folgendes: Ich "breche" das Feld für > den Timestamp in mehrere Felder auf: > > year | month | day | weekday | hour | minute | second > -----+-------+-----+---------+------+--------+------- > > Macht so etwas Sinn? Wieviel höher ist die anfallende Datenmenge im > Vergleich zu einem Feld, in dem nur der Timestamp liegt? Kannst Du doch auch zusammen rechen (für MySQL): year smallint -> 2 bytes month tinyint -> 1 byte day smallint -> 2 bytes weekday tinyint ->1 byte hour tinyint -> 1 byte minute tinyint -> 1 byte second tinyint -> 1 byte Summe : 9 byte Timestamp -> 4 bytes HTH, Christoph -- Christoph Reeg eMail: reeg_(at)_jugendnetz-ffm.de Microsoft : Firma in Redmond die (neben Tastaturen) auch das Betriebssysstem Windows98 herstellt. Siehe auch : Allgemeine Schutzverletzung, schwerer Ausnahmefehler, Gerätekonflikt ... (Joerg Kalisch)
php::bar PHP Wiki - Listenarchive