sql >> Databasteknik >  >> RDS >> Mysql

Hur använder man en uppsättning värden från PHP i 'IN'-satsen i mysql-frågan?

Det finns inget inbyggt stöd för det. Inte ens de bundna parameter-API:erna tillåter att arrayer används för IN klausuler. Du måste konstruera frågan med någon hjälpkod:

$friend_pics = array_map("mysql_real_escape_string", $friend_pics);
$friend_pics = "'" . implode("', '", $friend_pics) . "'";
"SELECT * WHERE user_id IN ($friend_pics)              "

Ett enklare alternativ skulle vara mysqls FIND_IN_SET() dock:

$friend_pics = mysql_real_escape_string(implode(",", $friend_pics));
"SELECT * FROM fb_user WHERE find_in_set(user_id,'$friend_pics')     "


  1. Vilken datatyp för latitud och longitud?

  2. Hur man visar sammanställningen av din anslutning i MySQL

  3. Sammanfoga flera rader i enstaka rader i MySQL

  4. MySQL - SQL_BIG_SELECTS