有時候需要使用 IN 的條件
但是在 PDO 使用會錯誤
網路上大部分的解決方式都是產生一串很多問號的字串來解決
$in = str_repeat(‘?,’, count($array) – 1) . ‘?’;
$sql = ‘SELECT * FROM table WHERE value IN ($in)’;
$stm = $db->prepare($sql);
$stm->execute($array);
後來看到另一種用 FIND_IN_SET 的方式解決
如果資料量不大的話可以使用
$params[‘:in’] = implode(‘,’,$in);
$sql = ‘SELECT * FROM table WHERE value IN (:in)’;
$stm = $db->prepare($sql);
$stm->execute($params);