【问题标题】:Multiple LIKE in PDO queryPDO查询中的多个LIKE
【发布时间】:2012-08-04 21:52:15
【问题描述】:

我需要对具有多个“喜欢”的 PDO 执行查询。

到目前为止,我会说我对 1 like 的查询如下所示: $query = $database->prepare('SELECT * FROM table WHERE column1 LIKE ?'); $query->execute(array('%$value1%'));

所以,如果我在 mysql 中有这个:

mysql_query("SELECT * FROM table WHERE column1 LIKE %$value1% OR column1 LIKE %$value2% OR column2 LIKE %$value1%")

它将如何在 PDO 中翻译?

mysql_query("SELECT * FROM table WHERE column1 LIKE ? OR column1 LIKE ? OR column2 LIKE ?")
$query->execute(array('%$value1%','%$value2%',.....));

这样就够了吗?

【问题讨论】:

  • 将你的引用样式排序出来(变量不插在单引号中),是的,这样就可以了。

标签: php pdo sql-like


【解决方案1】:

差不多就是这样,尽管在第二个示例中您似乎仍在使用 mysql_* 函数而不是 PDO。

除此之外,如果您希望变量替换为字符串,您只需要记住使用双引号即可。

$query = $dbh->prepare('SELECT * FROM table WHERE column1 LIKE ? OR column1 LIKE ? OR column2 LIKE ?');
$query->execute(array("%$value1%","%$value2%",.....));

【讨论】:

    猜你喜欢
    • 2017-08-13
    • 2012-06-22
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多