Zunächst einmal bin ich neu bei PDO. Ich arbeite an einem kleinen Projekt, um mich selbst zu verbessern.PHP - PDO - Wie man mehrere Zeilen mit nur einer Abfrage holt?
ich so einen Code bin mit einreihig aus meiner Datenbank holen:
$sql = "SELECT * FROM users WHERE ID = 1";
$sql_prepare = $db -> prepare($sql);
$result = $db -> query($sql);
$user = $result -> fetch(PDO::FETCH_ASSOC);
und Echo kein Ergebnis dieser Zeile wie folgt aus:
echo $user['ID'];
echo $user['Name'];
Ich muss Holen Sie mehrere Zeilen aus meiner Datenbank mit nur einer Abfrage. Ich möchte nicht immer wieder für jede Zeile abfragen, die ich brauche.
Das erste, was in meinem Kopf kam versuchte dies:
$sql = "SELECT * FROM users WHERE ID = 1 AND ID = 4 AND ID = 17";
$sql_prepare = $db -> prepare($sql);
$result = $db -> query($sql);
$user = $result -> fetch(PDO::FETCH_ASSOC);
Aber es hat nicht funktioniert wie erwartet. Ich habe einige Stunden lang Codingforen recherchiert, aber in allen Antworten ging es darum, die fetchAll-Methode zu verwenden und dann Ergebnisse mit der foreach-Schleife auszugeben. Ich möchte den Code nicht belasten, indem ich ganze Datenbanktabelle lade. Ich möchte nur bestimmte Zeilen aus meiner Datenbank mit nur einer Abfrage laden.
Also meine Frage ist:
Wie kann ich mehr und spezifische Zeilen aus meiner Datenbank ohne Verwendung fetchAll Methode und mit nur einer Abfrage holen?
Vielen Dank für Ihre Antworten und die Zeit im Voraus.
Sorry, wenn die Frage vor gefragt wurde.
Geben Sie für SQL-Operator ** OR **. – Michas
FetchAll stellt keine Anfragen an Ihre Datenbank. Es funktioniert nach dem Ergebnis Ihrer Anfrage. Wenn Ihre Abfrage ein Ergebnis zurückgibt, erhalten Sie mit fetchall ein Ergebnis. Wenn es 2 zurückgibt, dann wird es abgerufen. –
@DanielNielson Danke für die Erklärung. :) – OnrS90