[SQL] MYSQL Ausgabe umkehren

Dieses Thema im Forum "Webentwicklung" wurde erstellt von MusicAngel, 28. Juni 2010 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 28. Juni 2010
    MYSQL Ausgabe umkehren

    (Präfix SQL / PHP)
    Hallo Leute, ich habe das Problem dass ich die Ausgabe einer MYSQL-Query umkehren möchte. Dies allerdings nicht mit DESC / ASC, hier mein Code:

    PHP:
    $data  mysql_query ( "SELECT * FROM f WHERE link= $op_id  ORDER BY id DESC LIMIT 3" )
         or die(
    mysql_error ());

    while(
    $row  mysql_fetch_array ( $data ))
      {
        
    $id  $row [ 'id' ];
            

           
    // DO A LOT OF STUFF.
      
    }
    Erläuterung: In der Datenbank sind z.B. id = 12, id = 11, id = 10, id = 9, ..., id = 1
    Jetzt gibt der Code das so aus, dass zuerst id = 12 bearbeitet wird, dann id = 11 und dann id = 10.

    Ich möchte aber das genau umkehren: dass zuerst id = 10, dann id = 11 und dann id=12 bearbeitet wird. Dies kann ich aber nicht mit ASC lösen, da ja sonst nicht die jeweiligen letzten / höchsten ids gewählt werden!

    Gibts da irgendeinen Befehl wie ich das umkehren kann? Oder hat jemand eine Idee wie es ginge?



    Vielen Dank
     
  2. 28. Juni 2010
    AW: MYSQL Ausgabe umkehren

    Da es nur 3 Einträge sind du du haben willst:

    Hol die Daten und pack sie in ein Array und dreh das Array dann um.
     
  3. 28. Juni 2010
    AW: MYSQL Ausgabe umkehren

    erst alles fetch'n und dann array_reverse()

    PHP:
    $stack  = array();
    while(
    $row  mysql_fetch_assoc ( $data ))
        
    $stack [] =  $row ;
        
    $stack  array_reverse ( $stack );
    foreach(
    $stack  as  $row ) {
        
    //mach was 
    }
    oder mit "seek" von hinten anfangen

    PHP:
    for( $i  mysql_num_rows ( $data );  $i  >=  0 ; -- $i ) {
        
    mysql_data_seek ( $data $i );
        
    $row  mysql_fetch_assoc ( $data );
        
    //mach was
    }
     
  4. 28. Juni 2010
    AW: MYSQL Ausgabe umkehren

    PHP:
    $data  mysql_query ( "SELECT * FROM (SELECT * FROM f WHERE link= $op_id  ORDER BY id DESC LIMIT 3) `alias` ORDER BY `alias`.`id` ASC" )
         or die(
    mysql_error ());

    while(
    $row  mysql_fetch_array ( $data ))
      {
        
    $id  $row [ 'id' ];
            

           
    // DO A LOT OF STUFF.
      
    Klappt mit nem reinem SQL-Statement auch.

    MfG
     
  5. 28. Juni 2010
    AW: MYSQL Ausgabe umkehren

    Vielen Dank an alle!! Damit hat sich auch das Thema erledigt!
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.