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.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto