sql >> Base de Datos >  >> RDS >> Mysql

Una declaración preparada, `WHERE .. IN(..)` consulta y ordenación — con MySQL

podrías hacerlo de esta manera:

$ids = array(1,5,18,25);

// creates a string containing ?,?,? 
$clause = implode(',', array_fill(0, count($ids), '?'));


$stmt = $mysqli->prepare('SELECT * FROM somewhere WHERE `id` IN (' . $clause . ') ORDER BY `name`;');

call_user_func_array(array($stmt, 'bind_param'), $ids);
$stmt->execute();

// loop through results

Al usar esto, está llamando a bind_param para cada ID y mysql ha realizado la clasificación.