ふつうに「%」で括ってもうまくいかない。 sqlを直に実行するとふつうに動くので、bindValueがうまくいっていない模様。 原因は、「%」をくっつけるタイミングでした。 $query = "select * from table where testdata like :value "; $stmt = $pdo->prepare($query); $stmt->bindValue(":value", '%'. $value .'%', PDO::PARAM_STR); sql文中ではなく、bindValueのときに付けてあげるのが正しいみたい。 ちなみに間違ったのはこういう記述↓ $query = "select * from table where testdata like %:value% "; あとこれも↓ $query = "select * from table wher