我正在尝试创建一个仅基于许多条件创建数组的 SQL 查询和/或 php 代码。我有一个这样的数组:
Array ( [1] => 1 [8] => 0 [2] => 1 )
The [1] refers to 'question_id' with the 1 being a 'value'
The [8] refers to 'question_id' with the 0 being a 'value'
The [2] refers to 'question_id' with the 1 being a 'value'
我的数据库设置如下,当我调用它时,我试图获取一个仅满足上述所有 ^ 的电影 ID 的数组。所以说数组有[8] => 0。question_id应该是8,对应于该记录的值应该是0。所以说数组有1 => 0。question_id应该是1,对应于该记录的值应该是 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();
array_push($main_array,$res);
}
$main_array 之前是一个空数组。$array 是一个类似于上面的数组。但问题是,它检查一对,所以说1 => 0,如果匹配,则添加它。而不是检查它是否也匹配 [8] => 0 和 [2] => 1。