Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como usar uma matriz de valores do PHP na cláusula 'IN' da consulta mysql?


Não há suporte nativo para isso. Mesmo as APIs de parâmetros vinculados não permitem o uso de matrizes para IN cláusulas. Você tem que construir a consulta com algum código auxiliar:
$friend_pics = array_map("mysql_real_escape_string", $friend_pics);
$friend_pics = "'" . implode("', '", $friend_pics) . "'";
"SELECT * WHERE user_id IN ($friend_pics)              "

Uma alternativa mais simples seria mysqls FIND_IN_SET() Contudo:
$friend_pics = mysql_real_escape_string(implode(",", $friend_pics));
"SELECT * FROM fb_user WHERE find_in_set(user_id,'$friend_pics')     "