Rainer: Frage: sqlite sortieren und abspeichern

Hi!

Ich habe eine sqlite Datenbank erstellt und lasse sie innerhalb einer Funktion sortieren:

$SQLString = "SELECT * FROM stimuli ORDER BY bewgesamt DESC";
$Ort = sqlite_query($sqstim, $SQLString);

Wenn ich mir die Daten innerhalb der Funktion ausgeben lasse, sind die Daten sortiert.

Wenn ich mir die Daten außerhalb der Funktion, also durch ein unabhängiges .php Script ausgeben lassen, haben sie wieder die alte Sortierung.

Wie erreiche ich es, das die Daten in der Funktion nach dem Sortieren in der neuen Reihenfolge abgespeichert werden?

  1. Moin!

    Wie erreiche ich es, das die Daten in der Funktion nach dem Sortieren in der neuen Reihenfolge abgespeichert werden?

    Datenbanken speichern ihre Daten grundsätzlich nicht sortiert. Nach welchem Kriterium sollten sie das denn auch tun? Jede sortierte Speicherung würde immer nur genau EINEN Abfragefall treffen - sämtliche anderen Abfragefälle aber nicht, sondern im Gegenteil unter Umständen sogar durch die Vorsortierung eine höchst unperformante Neusortierung ergeben - unperformanter jedenfalls, als wenn die Daten unsortiert vorliegen.

    Wenn du eine SQL-Abfrage sortiert haben willst, nutze ORDER BY und gib an, wie sortiert werden soll. Die Datenbank wird mit dem besten verfügbaren Algorithmus die gewünschte Sortierung herstellen - und sich ansonsten jegliche Sortierung sparen, weil das deutlich performanter ist.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. yo,

      Wenn du eine SQL-Abfrage sortiert haben willst, nutze ORDER BY und gib an, wie sortiert werden soll.

      genau das wurde ja getan. es würde weiterhelfen, wenn man weiß, was genau mit außerhalb gemeint ist und wie die daten abgerufen werden.

      Ilja