Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Sugerencia] Uso de offset

¿Por qué no usar OFFSET para formular esta consulta? El uso de la QUERY con OFFSET resulta más comprensible y legible:

SELECT * FROM tabla_de_productos LIMIT 4 OFFSET 5;

Esta forma de expresar la consulta proporciona una estructura más intuitiva al indicar primero la cantidad de filas a obtener (LIMIT) y luego especificar a partir de qué fila (OFFSET). Esto facilita la comprensión de la lógica de la consulta.

2 respuestas
solución!

¡Hola, Martin!

Entiendo tu punto de vista y es cierto que la sintaxis que mencionas con OFFSET puede resultar más intuitiva para algunas personas. Sin embargo, en la lección se utiliza la sintaxis LIMIT X, Y en lugar de LIMIT Y OFFSET X por algunas razones.

En primer lugar, la sintaxis LIMIT X, Y es universal en SQL, mientras que la sintaxis con OFFSET no es soportada por todos los sistemas de gestión de bases de datos. Por ejemplo, SQL Server no soporta la sintaxis OFFSET, pero sí soporta LIMIT X, Y.

En segundo lugar, aunque la sintaxis con OFFSET puede parecer más intuitiva, puede llevar a confusiones. Por ejemplo, en la consulta SELECT * FROM tabla_de_productos LIMIT 4 OFFSET 5, podrías pensar que estás pidiendo los registros 4 a 5, pero en realidad estás pidiendo los registros 6 a 9 (recuerda que los índices en SQL empiezan en 0).

Por último, en términos de rendimiento, la sintaxis LIMIT X, Y puede ser más eficiente que la sintaxis con OFFSET, especialmente en consultas que devuelven muchos registros. Esto se debe a que OFFSET tiene que recorrer todos los registros hasta llegar al punto de inicio especificado, mientras que LIMIT X, Y puede empezar a devolver registros tan pronto como llega al punto de inicio.

Espero haber aclarado tu duda. ¡Sigue con tu gran trabajo y aprendizaje! :) <3

Si este post te ayudó, por favor, marca como solucionado ✓.

Hola Martin

Efectivamente como lo indica Erika, en el curso se está aprendiendo el uso de LIMIT X, Y y que OFFSET se encuentra en MySQL más por razones de compatibilidad, según la documentación oficial de MySQL, cito:

"For compatibility with PostgreSQL, MySQL also supports the LIMIT rowcount OFFSET offset syntax."

en https://dev.mysql.com/doc/refman/8.0/en/select.html.

Por último, hablando en términos de rendimiento, lo mejor sería utilizar la sintaxis SELECT ... WHERE ... LIMIT ..., que es mucho más eficiente, sobre todo en grandes bases de datos.

Saludos y a seguir estudiando!