2013-06-03 2 views
2

Я хочу присоединиться к столам, чтобы перечислить книги из двух категорий художественной литературы и романтики. Как я объединение с WHERE В предложении (в том, что даже возможно извините, нуб здесь?)Codeigniter: Присоединиться к разделу «где в»

Вот где я застрял:

$categories = array(10,12); 
$query = select()->from('books'); 
$query->join('genre_map','genre_map.gid IN ('.implode(",", $categories).')'); 

Jn Таблица genre_map: BookID, genre_id

Любая помощь SQL Query/CodeIgniter будет очень благодарна.

ответ

6

никогда не использовал CodeIgniter, но я бы сказал

$categories = array('10', '12'); 
$this->$db->select('*'); 
$this->$db->from('books'); 
$this->$db->join('genre_map','genre_map.bookid = books.bookid'); 
$this->$db->where_in('genre_map.gid', $categories); 

$query = $this->db->get(); 
+0

Работал как шарм. Большое спасибо. Забыл о where_in –

0

$ категории = массив (10,12);

$ query = select() -> from ('books');

$ query-> join ('genre_map', 'genre_map.gid IN (' .implode (",", $ categories). ')');

+0

Пожалуйста, рассмотрите возможность использования функций форматирования кода в редакторе stackoverflow. Нажмите ссылку редактирования под своим ответом и исправьте эту небольшую проблему. – nop77svk

0

Для CodeIgniter вы можете использовать как:

$categories = array('10', '12'); 

$this->$db->select('*')->from('books')->join('genre_map','genre_map.bookid = books.bookid')->where_in('genre_map.gid', $categories)->$this->db->get(); 
Смежные вопросы