Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Erste und Letzte ID einer Tabelle rausfinden

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • DJ Re-DarK
    hat ein Thema erstellt [Erledigt] Erste und Letzte ID einer Tabelle rausfinden.

    [Erledigt] Erste und Letzte ID einer Tabelle rausfinden

    Hallo,

    ich habe in einer Tabelle mehrere einträge. Jeder eintrag hat eine ID.

    Ich brauche nun für eine Funktion die Erste und die Letzte ID.

    Leider habe ich keine ahnung wie ich da ran komme. Die gesamtzahl der Einträge weis ich, aber wie bekomme ich nun die Erste und die Letzte?

    MfG

  • nikosch
    antwortet
    Ja. Und in #8 habe ich dann problemorientiert gepostet.

    Bsp.
    Elemente in DB
    1
    2
    5
    6
    8
    9

    Statt erstes Element und letztes zu ermitteln (das sagt ja eigentlich auch nichts darüber aus, was dazwischen vorhanden ist):

    1
    9

    (stell Dir vor, Du willst jetzt Random benuzten, Element "4" gibts aber gar nicht),
    lege ich Dir nahe, einfach Datensatz n aus der DB zu ziehen (z.B. n=3)

    5

    Wie? Bestimme die Anzahl m der Datensätze (das geht über COUNT):

    6

    Dann erzeuge einen Wert zwischen 1 und m, bspw. eben 3. Den benutzt Du mit LIMIT:

    LIMIT 3,1

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Das war nikoschs Intention in seinem ersten Post

    Einen Kommentar schreiben:


  • DJ Re-DarK
    antwortet
    Danke, aber habs schon hingekriegt (kopf->tisch):

    PHP-Code:
    $sql "SELECT * FROM zitate ORDER BY id DESC LIMIT 1";
    $result mysql_query($sql);
        while (
    $row mysql_fetch_assoc($result)) {
            
    $last $row['ID'].'<br>';
        
        }
        

    $sql2 "SELECT * FROM zitate ORDER BY id LIMIT 1";
    $result mysql_query($sql2);
        while (
    $row2 mysql_fetch_assoc($result)) {
            
    $first $row2['ID'].'<br>';
        
        } 
    Ich sortier den scheiß einfach rückwärts, dann bekomm ich auhc nur die Letzte ID *patsch*

    MfG

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von DJ Re-DarK Beitrag anzeigen
    Hab mal bischen rum Probiert, kriegs aber nciht hin:
    Code:
    <?php
    require("/configs/config.php");
    // Verbindungsaufbau + Konfiguration
    
    $sql = "SELECT MIN(id) AS anfang, MAX(id) AS ende 
       FROM zitate";
    // Der befehl
    
    $result = mysql_query($sql);
    // Ergebnis speichern und...
    
    // auf Fehler testen
    if (!$result) {
        die('Ungültige Abfrage: ' . mysql_error());
    }
    
    	while ($row = mysql_fetch_assoc($result)) {
    // Auslesen +
    		var_dump($row);
    // Anzeigen
    	
    	}
    ?>
    Ergänze doch mal Dein Skript um die fett markierten Teile.

    Grüße
    Thomas

    Einen Kommentar schreiben:


  • DJ Re-DarK
    antwortet
    OK, bitte nochmal langsam und für einen Blutigen anfänger verständlich Bin bei deinem Beitrag voll nicht durchgestiegen...

    MfG

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Du kannst auch mit der Menge der Datensätze (COUNT(*)) und LIMIT x,1 arbeiten. In zwei Querys versteht sich. Ansonsten wurde in diesem Forum schon jede Menge zum Thema Zufallsdatensatz geschrieben.

    Einen Kommentar schreiben:


  • DJ Re-DarK
    antwortet
    Naja, gut mal n anderes Beispiel:

    Ich hab in einer Datenbank witze, und wähle diese ZUfällig mit der Random-Funktion aus. Dafür brauche ich also einen Start und einen End-Wert, also definiere den Bereich wozwischen die ID's liegen Können. Daher muss ich die Erste und die Letzte ID aus der DB auslesen, und sie dann dem Randomizer übergeben.##

    MfG

    //EDIT:

    Hab mal bischen rum Probiert, kriegs aber nciht hin:
    PHP-Code:
    <?php
    require("/configs/config.php");
    // Verbindungsaufbau + Konfiguration

    $sql "SELECT MIN(id) AS anfang, MAX(id) AS ende 
       FROM zitate"
    ;
    // Der befehl

    $result mysql_query($sql);
    // Ergebnis speichern und...

        
    while ($row mysql_fetch_assoc($result)) {
    // Auslesen +
            
    echo $row.'<br>';
    // Anzeigen
        
        
    }
    ?>

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    naja, nehmen wir an (sinnfreies beispiel!):
    Dann mach doch gleich ein sinnvolles Beispiel! Was soll dieses Rumgeeiere immer?!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Also einfach den folgenden SQL-Befehl ausführen und das Ergebnis in PHP einlesen.

    Code:
    SELECT MIN(id) AS anfang, MAX(id) AS ende 
       FROM members
    Grüße
    Thomas

    Einen Kommentar schreiben:


  • DJ Re-DarK
    antwortet
    naja, nehmen wir an (sinnfreies beispiel!):

    Ich habd die Tabelle mitglieder. Jedes mitglied hat eine ID (1,2,3,4,5...........)

    die Tabelle heist members, die Spalte mit der ID halt ID.

    Nun will ich eine Funktion haben, die mir die Erste (also in diesem falle 1) und die letzte ID (hier in moiment 5) als variable speichert.

    MfG

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Könnte auch so gehen, sofern ich das Problem richtig verstanden habe

    Code:
    SELECT MIN(id) AS anfang, MAX(id) AS ende 
       FROM tabelle1
     WHERE ein_anderes_feld = 42
    Grüße
    Thomas

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Mit Limit.

    Einen Kommentar schreiben:

Lädt...
X