MYSQL | Nach der höchsten ID abfragen?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Entweder machst du dies so:



    mysql_query("SELECT * FROM cars ORDER BY ID DESC LIMIT 1"); // Statt cars deinen Tabellennamen für die Fahrzeuge hinschreiben


    // oder


    mysql_query("SELECT MAX(ID) FROM cars"); // Hier wird eine Aggregation benutzt. Einfacher und simpler


    Somit gibst du ein einziges Fahrzeug aus und zwar welches mit der höchsten Fahrzeugid. Dann speicherst du diese Fahrzeugid in eine Variable und dann machst du deine Schleife.


    Wäre jetzt meine Idee auf die Schnelle.


    Weil


    mysql_num_rows();


    Würde bei deiner Hilfestellung nichts bringen weil es die Anzahl der Datensätze rausbringt und nicht den Datensatz mit der höchsten ID.

    Die Macht etwas zu bewirken, ist in Dir. Du musst sie nur rauslassen


    cristiano-ronaldo-525-portugal-euro-2012-banner-wallpaper.jpg

  • SELECT * FROM tabelle ORDER BY id DESC LIMIT 1


    Somit hast du nur ein Ergebnis mit der höchsten ID, die auch eingetragen ist.


    mysql_num_rows hingegen zählt nur alle Einträge zusammen, das muss aber nicht entsprechend der höchsten ID sein bei A_I.


    // Edit: Aber wenn du das Ganze eh via mySQL lädst, warum nicht einach
    while (mysql_fetch_row()) benutzen? Oder wie der Befehl bei deinem Plugin auch heißen mag?


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Beispiel:

    SQL
    create table Vehicle (
        ID integer auto_increment,
        Model integer,
        primary key (ID));
    
    select max(ID) from Vehicle;
    
    
    insert into Vehicle values (1, 412);
    insert into Vehicle(Model) values (522);


    Beim ersten Insert bestimmts du selbst die ID des Fahrzeuges.
    Beim zweiten Insert wird ID automatisch gewählt wegen auto_increment.

  • Du meinst wie kannst du nun die höchste FahrzeugID in eine Variable speichern. ;)


    Ganz leicht.


    mysql_query("SELECT MAX(ID) FROM fahrzeuge");
    mysql_store_result();
    new maxvehicles = mysql_fetch_int();
    mysql_free_result();

    Die Macht etwas zu bewirken, ist in Dir. Du musst sie nur rauslassen


    cristiano-ronaldo-525-portugal-euro-2012-banner-wallpaper.jpg