Está en la página 1de 3

UNIVERSIDAD NACIONAL AUTNOMA DE MXICO

FACULTAD DE CONTADURA Y ADMINISTRACIN


DIVISIN SISTEMA UNIVERSIDAD ABIERTA Y
EDUCACIN A DISTANCIA
Modalidad: A Distancia
Licenciatura en Informtica
Alumno: Carlos Alvarado Martnez
Nmero de Cuenta:
304045046
Correo: carlos-alvarado@outlook.com
Materia: Desarrollo de Aplicaciones en Manejadores de Bases de Datos
Relacionales
Unidad 4 Actividad 10
Lee el apartado Setting Row Range with LIMIT and OFFSET del captulo 4
del
libro
Practical
PostgreSQL,
en
http://www.commandprompt.com/ppbook/x5802.htm#JOINS
y
el
apartado 7.6 LIMIT and OFFSET de la documentacin en lnea de
PostgreSQL
versin
8.4,
en
http://www.postgresql.org/docs/8.4/static/queries-limit.html y contesta
las siguientes preguntas:
1. Para qu sirve la clusula LIMIT?
La clusula LIMIT sirve para especificar la cantidad de filas que sern
retornadas, aunque por supuesto, la consulta podra retornar un valor
menor de filas que el LIMIT especificado; poner LIMIT ALL es lo mismo
que no poner lmite, lo cual resulta evidente.
2. Para qu sirve la clusula OFFSET?
La clusula OFFSET sirve para especificar desde qu fila se comenzar a
imprimir la salida de retorno de la consulta especificada, es decir, si se
especifica un OFFSET 5, se comenzar desde la quinta fila a imprimir el
resultado del query.
Un OFFSET muy grande de todas formas tiene que ser computado por el
servidor de la base de datos, por lo que un valor muy alto de OFFSET
podra no ser muy eficiente.

Por supuesto, se pueden especificar querys con ambas clusulas, aqu


un ejemplo:
booktown=# SELECT isbn, title, publication
booktown-#
FROM editions NATURAL JOIN books AS b
(book_id)
booktown-#
ORDER BY publication DESC
booktown-#
LIMIT 5;
isbn
|
title
| publication
------------+-----------------------+------------0596000855 | Programming Python
| 2001-03-01
0451457994 | 2001: A Space Odyssey | 2000-09-12
0451198492 | 2001: A Space Odyssey | 1999-10-01
044100590X | Dune
| 1999-10-01
0929605942 | The Tell-Tale Heart
| 1998-12-01
(5 rows)
booktown=# SELECT isbn, title, publication
booktown-#
FROM editions NATURAL JOIN books AS b
(book_id)
booktown-#
ORDER BY publication DESC
booktown-#
LIMIT 5
booktown-#
OFFSET 2;
isbn
|
title
| publication
------------+-----------------------+------------0451198492 | 2001: A Space Odyssey | 1999-10-01
044100590X | Dune
| 1999-10-01
0929605942 | The Tell-Tale Heart
| 1998-12-01
0441172717 | Dune
| 1998-09-01
1885418035 | The Tell-Tale Heart
| 1995-03-28
3. Por qu es conveniente combinar la clusula ORDER BY con
la clusula LIMIT?
Debido a que si no se especifica un ORDER BY, el retorno de la consulta
ser inconsistente y no se tendr seguridad alguna sobre la posicin de
los datos retornados, esto no es un error, es una consecuencia inherente
del hecho de que SQL no promete entregar los resultados de un query
en cualquier orden particular si no se usa la clusula ORDER BY para
especificar el orden.

También podría gustarte