2016-09-22 3 views
-3

Wie kann ich die letzte Zeile in einer MySQL-Tabelle mit PHP auswählen? Ich habe 3 Spalten ID (AI), Länge und Breite. DBName: FTS Tablename: CurrentHolen Sie sich den letzten Datensatz in MySQL mit PHP

Danke für die Antwort Jungs, Ich habe richtigen Ergebnisse erworben durch eine solche Abfrage SELECT Länge verwenden, Breite FROM Current ORDER BY id DESC LIMIT 1

+0

ORDER BY sollte alle Ihre Bedürfnisse erfüllen –

+2

eine ganze Reihe von Möglichkeiten; Was hast du versucht? –

+0

Ich würde Count() verwenden, um die Anzahl der Zeilen zu finden. Wenn Ihre IDs dann Zeilen entsprechen, würde ich die Zeile mit der ID auswählen, die der Anzahl entspricht. – Sedrick

Antwort

1

können Sie fügen Sie den folgenden bis zum Ende der Anfrage:

order by id desc limit 1 

Referenz:

+2

Nun, die Tabelle * muss * keinen Primärschlüssel haben. Er kann nach beliebigen Spalten sortieren. – David

+0

@David erwähnte er nicht, dass er den Primärschlüssel nicht benutzte. Bist du sicher? – user6865936

+0

Nouman hat "id (AI)" erwähnt, AI bedeutet hier automatisches Inkrementieren und MySql hat im Allgemeinen einen Primärschlüssel für die ID mit automatischer Inkrementierung. – Samundra

0

Folgende Annahmen wurden getroffen, um die Frage zu beantworten.

  • Primärschlüssel ist id
  • Reihe von id sortiert wird, um auf absteigend, letzte Zeile hat immer höchsten Wert von id

Der Code unten verwendet werden kann, die letzte Zeile mit PHP abzurufen.

<?php 

class CurrentLocation { 
    public $id; 
    public $latitude; 
    public $longitude; 
} 

$user = 'root'; 
$pass = ''; 
$dbh = new PDO('mysql:host=localhost;dbname=fts', $user, $pass); 
$query = "SELECT id, latitude, longitude FROM currentlocation ORDER BY id DESC"; 
$sth = $dbh->prepare($query); 
$sth->execute(); 

$result = $sth->fetchObject('CurrentLocation'); 
print_r($result); 

Hier, ich bin mit PHP PDO und es ist fetchObject deren Rückkehr Karten Klasse CurrentLocation. Der Einfachheit halber kann anstelle von fetchObject man auch verwenden $result = $sth->fetch(PDO::FETCH_ASSOC);

Bitte $user, $pass zu Ihrem MySql Benutzername, Passwort ändern und das Skript ausführen. Es sollte Sie unten einen Ausgang ähnlich dem geben:

CurrentLocation Object 
(
    [id] => 2 
    [latitude] => 23.32 
    [longitude] => 86.33 
) 

Bitte aktualisieren Sie Ihre Frage, wenn Sie irgendwelche spezifischen Änderungen haben hier gemacht werden und dann werde ich dementsprechend meine Antwort aktualisieren.

+0

Danke, Problem ist gelöst. –

Verwandte Themen