MySQL SELECT DISTINCT .... Vorfilterung?

  • Zitat


    Ach das fällt mir ja grad erst auf... Junge, schau dir erstmal meinen Code richtig an...
    Ich habe das ganze in einer for-Schleife die 1000x durchlaufen wird, du hast einen Durchlauf. Also bitte...


    Ja, das ist mir vorhin auch aufgefallen, dummer Fehler. Deswegen ändert sich an der Sitation nichts. PHP+INT ist schneller als PHP+DATE und MySQL+DATE ist schneller als PHP+DATE und ob PHP+INT schneller als MySQL+DATE ist kann man ja auchnoch herausfinden.
    Aber euer Ton wird zunehmend herablassend, unsachlich und vorallem unrespektvoll. Ich diskutiere gerne weiter wenn sich das ändert.

    EDIT:
    Auf eine Tabelle mit 100.000 Datensätzen

    Code
    id, INT(6) | time, INT(11)
    -----------+---------------
    1          | 1313756907
    -----------+---------------
    2          | 1313789164
    -----------+---------------
    usw.


    erstellt mit

    PHP
    $sql="INSERT INTO timetable (time) VALUES (".(time()-1000000+rand(0, 1000000)).")";
    Code
    2.9573171138763
    2.9359569549561
    3.0700311660767
    3.018052816391


    Und nochmals auf 100.000 DATE datensätze erstellt mit

    PHP
    $sql="INSERT INTO timetable (time) VALUES ('".rand(1000,2100)."-".rand(1,12)."-".rand(1,30)."')";
    Code
    0.10709095001221
    0.14044904708862
    0.14642310142517
    0.13625597953796

    Ok, ich muss eingestehen, dass meine empfehlung zu PHP und INT quark war.

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

    2 Mal editiert, zuletzt von Tobse (26. August 2011 um 21:33)

  • Ok, ich muss eingestehen, dass meine empfehlung zu PHP und INT quark war.


    Und das haben wir dir die ganze Zeit klar machen wollen

    Ein Script zum Umschreiben der Daten ist in 5 Minuten erstellt.


    Da braucht man noch nicht mal ein Script. Mit phpMyAdmin einfach eine Spalte mit date_time anhängen und ein Update ausführen:

    update tabelle set datum=from_unixtime(timestamp_spalte)

  • habe jetzt nicht alles gelesen ist schon spät ^^


    Dann lass' doch einfach das posten sein, anstatt eine Lösung zu posten, obwohl das Thema schon durch ist