php - 在 MySql 中使用 IN 条件进行搜索

标签 php mysql

我正在为 IOS 编写 Web 服务 cakePhp并陷入IN情况。

我有一张 table dog_temperaments它有值 "happy,dependent,shy" .

现在,如果 IOS 向我发送数组(快乐,害羞),那么我会像这样搜索

Select dog_temperaments.* where temperaments IN(happy,shy)

它工作正常,但如果 IOS 向我发送数组 0 或任何(意味着通过任何气质搜索)那么我将如何搜索........

任何方式按所有气质搜索

最佳答案

如果它是0或任何any,则不需要该条件,因为它应该返回所有这些。

因此,假设 $type 将包含气质作为数组,而 0/any 将是这种情况下的单个元素。

if(count($type) == 1 && in_array(($type[0], array('0', 'any'))) {
    $condition = "";
} else {
    $condition = "WHERE temperaments IN ('" . implode("','", $type) . "')";
}

查询将类似于 -

"Select dog_temperaments.* from dog_temperaments ".$condition

关于php - 在 MySql 中使用 IN 条件进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30258959/

相关文章:

javascript - 自动将深色背景添加到透明 PNG 上的白色

php - 如何修复 Opencart 中的产品缩略图大小?

php - 使用LOAD DATA LOCAL INFILE将CSV添加到MySQL数据库时出现问题

php - 修复 Innodb Integrity 约束违规 : 1452

MYSQL 对具有相同值的行选择一次

mysql - 如何在 mysql 非常大的表中更快地分组?

javascript - AJAX 发布 fatal error 列不能为空

mysql - 有没有什么规则规定sql语句子句的哪一部分可以用于条件/案例表达式?

mysql - 如何选择一个变量为空而另一个变量不为空的观测值?

c# - 如何在wpf中将文本框绑定(bind)到MySQL数据源