gpt4 book ai didi

php - 如何使用数组的多个键/值进行 SQL 查询?

转载 作者:行者123 更新时间:2023-11-29 14:01:04 25 4
gpt4 key购买 nike

我有一个包含如下键和值的数组:

Array ( [1] => 0 [3] => 0 )

我想调用一个 Question_id = 1 且值为 0 的数据库,并将其与 Question_id = 3 且值为 0 的查询结合起来。我正在使用 Codeigniter。

我已经尝试过:

foreach($array as $key=>$value){
$this->db->where('question_id', $key);
$this->db->where('value', $value);
$this->db->from('movies_values');
$query = $this->db->get();
$res = $query->result();
print_r($res);
array_push($main_array,$res);
}

最佳答案

如果我猜对了,请尝试以下操作

$this->db->where_in('question_id',array_keys($array));
$this->db->where_in('value', array_values($array));
return $this->db->get('movies_values')->result();

编辑如果您想成对检查 where 子句,请尝试此操作

$count=0;
foreach($array as $key=>$value)
{
$where=array('question_id' => $key, 'value' => $value);
if($count==0)
$this->db->where($where);
else
$this->db->or_where($where);
$count++;
}
return $this->db->get('movies_values')->result();

这会产生

SELECT *
FROM movies_values
WHERE question_id = key1 AND value val1
OR question_id = key2 AND value val2
OR question_id = key3 AND value val3

引用:Active Record

关于php - 如何使用数组的多个键/值进行 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15046389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com