Introducción
Únicamente veremos cómo hacer un inner join pero limitar los resultados y poner un offset, para una paginación con inner joins. Lo que viene a ser un limit
y offset
en SQL.
Recordemos que ya habíamos visto cómo unir tablas utilizando este framework, pero no vimos cómo limitar los datos.
Unir tablas y limitar los resultados con CodeIgniter
Aquí el código:
<?php
$this->db
->select("tabla1.campo, tabla1.otroCampo, tabla2.unCampo")
->from("tabla1")
->join("tabla2", "tabla1.idTabla2 = tabla2.id")
->limit(15, 10)
->get()
->result();
Eso devuelve la unión de las tablas en un arreglo. En pocas palabras, los datos. Analicemos un poco…
El número 15 es el límite; es decir, cuántos datos regresará a partir del offset.
Por otro lado, el número 10 es el offset; es decir, cuántos datos omitirá. Este dato puede ser 0 si no queremos que omita nada.
De ahí recordemos que el método result
devuelve un arreglo con los datos.
Finalmente y para aclarar, tabla1 y tabla2 son ejemplos, en la vida real tendrán otro nombre. Y cuando hacemos el select
también podemos especificar que seleccione todo con select("*")
si queremos todas las columnas.