我想從符合數組的多個條件的數據庫中獲取數據。我可以在數組中設置多個Codeigniter Where標準嗎?
陣列是這樣的:
Array ([21] => 1,[23] => 0,[19] => 1);
鍵爲一個問題ID和值是是或否。
我需要找到電影,其中的question_id = 21
值1
,爲question_id = 23
價值0
和價值question_id = 19
是1
。我把它們存儲的方式是這樣的:
所以,我首先想到的是讓每一個數據,然後把它們放到一個更大的陣列。如果電影顯示的次數與陣列中元素的數量相同,那麼我認爲它是一個很好的匹配。但這似乎效率低下。我寧願找到符合標準的電影。
由於有movie_id
記錄具有相同值,有沒有寫這樣的事情?:
foreach($array as $key=>$value){
$i++;
$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,$res);
想到這背後是創造一切WHERE
s的循環方式。然後使用其中的值運行查詢。這似乎不起作用,有什麼我可以做的嗎?
題外話:phpMyAdmin的提高了很多,因爲是你的截圖貼。考慮升級;) – 2013-03-02 22:48:35
好的將做 - - 123456 – 2013-03-02 22:49:59
另外,我願意打賭有一個很好的方式來做到這一點純SQL ...沒有PHP需要。 – 2013-03-02 22:52:04