2010-02-15 91 views
0

MySQL查詢子句我需要一些幫助解決問題與MySQL,是有可能的數組傳遞給函數,然後運行一個比賽agains數組值?幫助與笨

我有這個疑問

function getMenu($cookieId) { 
    $this->db->select('*'); 
    $this->db->from('categoryTable'); 
    $this->db->join('userMenuTable', 'categoryTable.categoryId = userMenuTable.categoryId', 'left'); 
    $this->db->where('userMenuTable.cookieId', $cookieId); 

    $query = $this->db->get(); 
    return $query->result_array(); 

} 

使用$query數組返回可以查詢數據庫,並從不匹配的數組值表中的所有值?

+0

您可以發佈'$ query'的內容是什麼?我自己沒有使用CI,但瞭解數組返回的方式將有助於回答如何調用查詢。 –

回答

1

使用此條件查詢:

$this->db->where_not_in('fieldname', $array_of_values); 

你將不能夠直接使用數組中的例子返回的,因爲它來自一個SELECT *因此它包含表的所有字段。你必須建立一個只有你想過濾下一個查詢字段的值的數組。

0

哪些列你有數組中? 理論上你可以做一個

select from `new table` where `field` NOT IN (Select `field` from `old_table`) 

要做到這一點,在短短一個查詢,或通過您的陣列NOT IN條件