Stellen haben wir eine Abfrage: $ids = array(1,5,18,25)
Eine vorbereitete Anweisung, WHERE .. IN (..) `Abfrage und Sortierung - mit MySQL
mit:
SELECT * FROM somewhere WHERE `id` IN(1,5,18,25) ORDER BY `name`;
und eine Reihe von IDs zu holen Prepared Statements ist es adviced eine Anweisung vorzubereiten und nennen es mehrfach:
$stmt = $mysqli->prepare('SELECT * FROM somewhere WHERE `id`=?;');
foreach ($ids as $id){
$stmt->bind_params('i', $id);
$stmt->exec();
}
Aber jetzt werde ich manuell die Ergebnisse sortiert werden. Habe ich schöne Alternativen?
Link Nach Ihnen I zur Verfügung gestellt denke, die Begründung für die Vorbereitung von Anweisungen war die Notwendigkeit, UPDATE, die mehrere Updates in einer Abfrage nicht unterstützt. Während Sie SELECT auswählen, reicht Ihre erste Anfrage aus. –
Ich war überzeugt, dass vorbereitete Aussagen in solchen Fällen nicht gut sind. Die einzige nette Lösung ist, eine Abfrage auszuführen und dieses Array von IDs dort zu sortieren, nicht hier. – kolypto