php - update - en codeigniter ¿cómo hago un join con una cláusula where
update_batch codeigniter (3)
entonces tengo dos tablas, y quiero obtener todas las filas de la tabla 1 que cumplan con las condiciones de la cláusula where, y luego unirlas con la tabla dos en función de las condiciones de unión.
aquí están las tablas de muestra:
table1:
col1 col2 col3
1 a val1
2 b val2
3 c val3
table2:
col1 col3
1 someval1
2 someval2
3 someval3
ahora quiero tomar todas las filas en la tabla 1 donde col1 = 2, y unir esas filas con las filas de la tabla2 donde table2.col1 = table1.col1. ¿Tiene sentido?
Ha pasado un tiempo desde que escribí CI, pero según esta página de documentos , su solución podría verse así:
$this->db->select(''*'');
$this->db->from(''table1'');
$this->db->join(''table2'', ''table1.col1 = table2.col1'');
$this->db->where(''table1.col1'', 2);
$query = $this->db->get();
tenga en cuenta que esta respuesta no debe interpretarse de ninguna manera como un respaldo al trabajo con Code Igniter ;-)
Prueba esto :
$this->db->select(''*''); // Select field
$this->db->from(''table1''); // from Table1
$this->db->join(''table2'',''table1.col1 = table2.col1'',''INNER''); // Join table1 with table2 based on the foreign key
$this->db->where(''table1.col1'',2); // Set Filter
$res = $this->db->get();
Espero eso ayude :)
$this->db->select(''book_id, book_name, author_name, category_name'');
$this->db->from(''books'');
$this->db->join(''category'', ''category.category_id = books.category_id'');
$this->db->where(''category_name'', ''Self Development'');
$query = $this->db->get();
// Produces SQL:
select book_id, book_name, author_name, category_name from books
join category on category.category_id = books.category_id
where category_name = "Self Development"