sql >> Database teknologi >  >> RDS >> Mysql

Hvordan bruger man en række værdier fra PHP i 'IN'-klausulen i mysql-forespørgslen?

Det er der ingen indfødt støtte til. Selv de bundne parameter API'er tillader ikke at bruge arrays til IN klausuler. Du skal konstruere forespørgslen med en hjælpekode:

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

Et enklere alternativ ville være mysqls FIND_IN_SET() dog:

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


  1. Vedligeholdelse af orden i MySQL IN-forespørgsel

  2. ABS() Funktion i Oracle

  3. Forberedelse af en MySQL INSERT/UPDATE-sætning med DEFAULT-værdier

  4. SQL Server:beregner datointervaller