des apl man dbs unidad 4 actividad 10
DESCRIPTION
Des Apl Man DBs Unidad 4 Actividad 10TRANSCRIPT
![Page 1: Des Apl Man DBs Unidad 4 Actividad 10](https://reader036.vdocuments.site/reader036/viewer/2022082519/5695d3411a28ab9b029d4f9c/html5/thumbnails/1.jpg)
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICOFACULTAD DE CONTADURÍA Y ADMINISTRACIÓN
DIVISIÓN SISTEMA UNIVERSIDAD ABIERTA YEDUCACIÓN A DISTANCIA
Modalidad: A DistanciaLicenciatura en Informática
Alumno: Carlos Alvarado Martínez Número de Cuenta: 304045046Correo: [email protected]: Desarrollo de Aplicaciones en Manejadores de Bases de Datos RelacionalesUnidad 4 Actividad 10
Lee el apartado Setting Row Range with LIMIT and OFFSET del capítulo 4 del libro Practical PostgreSQL, en http://www.commandprompt.com/ppbook/x5802.htm#JOINS y el apartado 7.6 LIMIT and OFFSET de la documentación en línea de PostgreSQL versión 8.4, en http://www.postgresql.org/docs/8.4/static/queries-limit.html y contesta las siguientes preguntas:
1. ¿Para qué sirve la cláusula LIMIT?
La cláusula LIMIT sirve para especificar la cantidad de filas que serán retornadas, aunque por supuesto, la consulta podría retornar un valor menor de filas que el LIMIT especificado; poner LIMIT ALL es lo mismo que no poner límite, lo cual resulta evidente.
2. ¿Para qué sirve la cláusula OFFSET?
La cláusula 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 podría no ser muy eficiente.
![Page 2: Des Apl Man DBs Unidad 4 Actividad 10](https://reader036.vdocuments.site/reader036/viewer/2022082519/5695d3411a28ab9b029d4f9c/html5/thumbnails/2.jpg)
Por supuesto, se pueden especificar querys con ambas cláusulas, aquí un ejemplo:
booktown=# SELECT isbn, title, publicationbooktown-# FROM editions NATURAL JOIN books AS b (book_id)booktown-# ORDER BY publication DESCbooktown-# 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, publicationbooktown-# FROM editions NATURAL JOIN books AS b (book_id)booktown-# ORDER BY publication DESCbooktown-# LIMIT 5booktown-# 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 cláusula ORDER BY con la cláusula 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 posición 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 cláusula ORDER BY para especificar el orden.