Une instruction préparée, `WHERE .. IN (..)` requête et tri - avec MySQL

Imaginons que nous ayons une requête:

SELECT * FROM somewhere WHERE `id` IN(1,5,18,25) ORDER BY `name`;

et un tableau d'Id de fetch: $ids = array(1,5,18,25)

Avec des déclarations préparées à l'avance c'est conseillé de préparer une déclaration et appel à de multiples reprises:

$stmt = $mysqli->prepare('SELECT * FROM somewhere WHERE `id`=?;');
foreach ($ids as $id){
    $stmt->bind_params('i', $id);
    $stmt->exec();
    }

Mais maintenant je vais avoir à les trier manuellement. Dois-je tout de belles alternatives?

source d'informationauteur kolypto | 2010-09-13