sql >> Databasteknik >  >> RDS >> Mysql

Skicka värden till MySQL IN-drift i PDO-förberedd uttalande?

Du kan inte skicka in flera värden i en enda platshållare. Du måste ange en annan platshållare för varje värde som ska skickas till IN () . Eftersom du inte vet hur många det kommer att bli, använd ? istället för namngivna parametrar.

$values = explode(',', $values) ;

$placeholders = rtrim(str_repeat('?, ', count($values)), ', ') ;
$query = "SELECT * FROM table WHERE id IN ($placeholders)";

$stm = $db->prepare($query) ;
$stm->execute($values) ;


  1. lång omröstningsinformation från mysql fungerar inte

  2. MySql-fråga för att välja poster med ett visst datum

  3. Vad är SQL Server-motsvarigheten till INET_ATON

  4. Kan PDO rowCount() efter UPDATE-frågan visa skillnaden mellan inga ändringar gjorda och en obefintlig rad?