Frage zu mysql_fetch_object()

  • Hallo zusammen,
    folgendes Beispiel:

    Code
    $ergebnis = mysql_query("SELECT * FROM tabelle");
    $row = mysql_fetch_object($ergebnis);

    Bei mysql_fetch_object (gilt natürlich auch für mysql_fetch_row etc.) holt er sich ja die erste Zeile aus $ergebnis.
    Würde ich jetzt mysql_fetch_object() nochmal ausführen würde er sich
    die 2te holen.
    Nun wollte ich fragen ob es möglich ist das ich die Abfrage wieder "auf die
    erste Zeile zurückstelle", damit ich erneut mit $ergebnis arbeiten kann.
    Zur Zeit habe ich es nämlich bei einem PHP-Script so realisiert, dass ich zweimal mysql_query ausgeführt habe (Also zwei mal die gleiche select-Abfrage),
    was ja nicht gerade performant ist.

  • Also die erste SQL-Abfrage wird dazu benutzt um Vergleiche durchzuführen.
    Vereinfacht gesagt wird solange aus der Tabelle X gelesen bis ein Wert mit Tabelle Y übereinstimmt.
    Das bedeutet auch das nicht unbedingt die ganze Tabelle X durchlaufen wird.
    Ist das geschehen geb ich Tabelle Y aus, und dann die
    vollständige Tabelle X.
    Bislang hab ich zwischen dem Vergleichen x mit y und dem Ausgeben von x nochmal
    eine SQL-Abfrage auf x. Die wollt ich mir sparen.
    Und sowas wie

    Code
    $ergebnis1 = $ergebnis2 = mysql_query("SELECT * FROM tabelle");


    scheint ja nicht zu gehen, da wohl nur eine Referenz auf das Ergebnis der Select Abfrage
    übergeben wird. Soll heißen, wenn ich ein mysql_fetch_object auf $ergebnis1 mache
    ändert sich der Datensatz der als nächstes abgefragt wird von $ergebnis2.