Informática Aplicada a las Ciencias Sociales.
Prácticas Bases de Datos, Openoffice Base
Capítulo 5. Consultas simples

En este tema, en primer lugar, vamos a ver qué es una consulta y para qué se utiliza.
En el segundo punto veremos cómo realizar una consulta básica utilizando el asistente.
Por último, veremos cómo realizar una consulta sobre varias tablas combinando el asistente con el modo Diseño.

1. Consultas

Las consultas son objetos que vamos a utilizar para visualizar parte de la información contenida en nuestras bases de datos desde una perspectiva más detallada y más adaptada a las necesidades concretas a una situación puntual, en contraposición al contenido total de las tablas de nuestra base de datos.
Se pueden realizar sobre una o varias tablas relacionadas y el resultado que devuelven se muestran también en forma de tabla.
Las consultas son muy útiles a la hora de construir formularios y, sobre todo, informes, como ya veremos en próximas unidades.
En OOo Base las consultas se pueden crear en modo Diseño, utilizando el asistente o utilizando SQL. SQL es el lenguaje estándar de creación y manipulación de bases de datos pero su aprendizaje queda fuera de los objetivos de este curso, por lo que nosotros vamos a aprender a realizar consultas, primero, de forma básica, utilizando el asistente y, luego, más complejas, en modo Diseño.

2. Creación de consultas sobre una tabla utilizando el asistente

Vamos a comenzar realizando una consulta que nos devuelva de la tabla Interpretes (ver Figura 5.1 ), que recordamos contenía intérpretes de distintas nacionalidades (ver Figura 5.2), el nombre, los apellidos y la nacionalidad de los que no son españoles. Para ello, teniendo seleccionada la sección “Consultas”, nos situamos sobre el apartado de tareas y elegimos “Usar el asistente para crear consulta…”. Nos aparece entonces la primera ventana del asistente donde debemos elegir qué campos queremos que se muestren, y seleccionamos entonces los campos Nombre, Apellidos,y Nacionalidad de la tabla Interpretes (ver Figura 5.3).

unidad5_html_795ecbd1.png

Figura 5.1. Diseño de la tabla Interpretes

unidad5_html_7ce00b30.png

Figura 5.2. Contenido de la tabla Interpretes

unidad5_html_m1b32751b_1.png

Figura 5.3. Selección de campos a mostrar en la consulta

A continuación, podemos elegir si queremos que se muestren ordenados en función de los valores de uno o varios campos. Nosotros vamos a seleccionar que se ordenen alfabéticamente por los apellidos del intérprete como aparece reflejado en la Figura 5.4.

unidad5_html_mdcb03cf_1.png

Figura 5.4. Criterios de ordenación del resultado de la consulta.

En el siguiente paso podemos elegir si queremos indicar uno o varios criterios de búsqueda; es decir, si queremos que las filas que se muestren cumplan alguna condición en particular. Como en nuestro caso el objetivo es mostrar sólo los intérpretes no españoles, debemos indicar que para el campo Nacionalidad no deseamos aquellos que contengan el valor “Español” (ver Figura 5.5).

unidad5_html_7c3e78c7_1.png

Figura 5.5. Criterios de búsqueda de la consulta.

A continuación, podemos elegir con qué nombre (alias), se mostrarán las cabeceras de las columnas de los campos que hemos elegido al mostrar el resultado de la consulta. En este caso, como los nombres de los campos son bastante claros simplemente les quitamos el nombre de la tabla que figura delante del nombre (ver Figura 5.6).

unidad5_html_m6bf3f3a0_1.png

Figura 5.6. Nombre de las cabeceras de columnas al presentar datos

Para finalizar, en la última ventana (ver Figura 5.7) se nos muestra un resumen con todas las opciones elegidas y es donde debemos indicar el nombre con el cuál se guardará la consulta, en nuestro caso, Consulta_Interpretes. Además podemos elegir si al finalizar queremos que se muestre el resultado de la consulta o se abra la consulta en modo Diseño para afinar y detallar mejor la consulta. Nosotros vamos a elegir que muestre el resultado ya que el modo Diseño lo veremos en el siguiente apartado y en la próxima unidad.

unidad5_html_1a77d95d_1.png

Figura 5.7. Resumen de la consulta y nombre de la consulta

Se muestra entonces el resultado de la consulta (ver Figura 5.8) donde podemos comprobar qué intérpretes tenemos almacenados que no son españoles.

unidad5_html_m34c321e0.png

Figura 5.8. Resultado de Consulta_Interpretes

Una vez cerramos la consulta, esta ya queda almacenada en la sección consultas y podemos hacer uso de ella en cualquier momento.

3. Creación de consultas sobre varias tablas combinando el asistente con el modo Diseño

Ahora vamos a realizar una consulta que nos muestre las películas junto con el nombre del género al que pertenecen. Gracias a esta consulta vamos a empezar a comprobar el gran potencial que tiene guardar la información distribuida en varias tablas estableciendo relaciones entre ellas.
Para realizar esta consulta primero vamos a utilizar el asistente para conseguir un primer "borrador" de la consulta que queremos realizar para, finalmente, acabar de concretarla en modo Diseño. Por tanto, empezamos de nuevo yendo a la sección tareas del tipo de objeto consulta y elegimos "Usar el asistente para crear consulta…".
Ahora, en la ventana inicial del asistente, elegimos los campos Titulo, Director, Año y Formato de la tabla Peliculas (ver Figura 5.9)

unidad5_html_25458290_1.png

Figura 5.9. Selección de campo de tabla Peliculas

En la siguiente ventana (Figura 5.10) vamos a indicar que queremos que el resultado se ordene, en primer lugar, en función del campo Director, y, en caso de coincidir el director entre distintas películas, en función del campo Titulo.

unidad5_html_m496041d8_1.png

Figura 5.10. Criterios de ordenación para la consulta

En esta consulta no vamos a poner ninguna condición por la que filtrar los datos, por lo que nos vamos directamente a la ventana "Alias" (Figura 5.11), donde vamos a aprovechar para “maquillar” que el campo Titulo no tuviera tilde al crear dicho campo y ahora sí se la incluimos. Además, para que el campo Año quede más concreto lo vamos a presentar como Fecha de estreno.
Antes de finalizar con el asistente, en la ventana "Información general" del mismo, debemos incluir el nombre de la consulta, que en este caso va a ser Consulta_Peliculas_Generos, y vamos a indicar también que no queremos que se muestre el resultado de la consulta, sino que queremos seguir trabajando con ella en modo Diseño. Para esto último debemos activar la casilla "Modificar consulta" en dicha ventana (ver Figura 5.12).

unidad5_html_m5d4ae256_1.png

Figura 5.11. Modificación de los alias de los campos

unidad5_html_m7d31c26c_1.png

Figura 5.12. Nombre de la consulta e indicación de seguir modificándola

Nos debe aparecer entonces una ventana como la de la Figura 5.13. que es la ventana que permite crear consultas en modo Diseño. El entorno de trabajo en modo Diseño lo vamos a ver con más detenimiento en la siguiente unidad y en esta sólo nos vamos a centrar en los elementos específicos para conseguir la consulta que queremos realizar. En primer lugar, podemos ver que la ventana aparece dividida en dos partes bien diferenciadas: una que contiene la tablas que estamos utilizando en la consulta y otra con los campos que ya habíamos seleccionado en el asistente junto con una serie de opciones que podemos indicar para cada uno de ellos. Así, podemos ver que aparecen los campos Titulo, Director, Año y Formato junto con los alias que indicamos en el asistente y la opción de que se ordene la consulta en función del campo Director.

unidad5_html_m30ef4f9e_1.png

Figura 5.13. Ventana de diseño de consultas

Algo que seguro nos ha llamado la atención es por qué aparece el campo Titulo dos veces. La respuesta es que, debido a que en el orden en que queremos que se muestren los campos es: primero el campo Titulo, y luego el Director, y en el asistente hemos indicado que primero queremos la ordenación en función del nombre del director, y, en caso de repetirse dicho nombre, ordenar por el título de la película. La única forma de indicar esto es poniendo de nuevo el campo Titulo detrás de los otros cuatro, indicando que se ordene de manera ascendente pero desmarcando la casilla "Visible" para que no aparezca dos veces este campo en el resultado de la consulta.
Ya hemos visto entonces que en el modo Diseño nos aparecen los campos de Peliculas que deseamos pero aún no hemos hecho nada para ver el nombre del género de la película. Como el nombre del género es un campo de la tabla Generos lo primero que tenemos que hacer es indicar que queremos incluir dicha tabla en la consulta. Para ello, debemos seleccionar el icono "Añadir tablas" (ver Figura 5.14), que es el primero por la izquierda de los iconos de la fila inferior y elegir la tabla Generos.

figura0514.jpg

Figura 5.14. Añadir tablas a una consulta

Podemos observar que automáticamente OOo Base detecta que estas dos tablas están relacionadas. ¿Qué hubiera pasado si no hubieramos indicado en la unidad anterior que existe una relación? Pues lo mismo que si hubieramos intentado elegir los campos de ambas tablas directamente en el asistente, que la respuesta a la consulta (ver Figura 5.15) hubiera sido que cada fila de la primera tabla aparecería unida a cada una de las filas de la otra tabla sin ningún criterio, es decir, en nuestro caso tendríamos 90 filas (resultado del producto cartesiano de 10 filas de Peliculas por 9 que tenemos en Generos) de las cuales 80 no significan nada. Pero al haber indicado que existe la relación y detectarse en el modo Diseño conseguimos, sin necesidad de indicarlo explícitamente, que a la hora de mostrar todas las filas de Peliculas y Generos, sólo nos muestre aquellas donde el valor para el campo por el que están relacionadas (Genero e Id_genero respectivamente) sea el mismo, es decir, que sólo nos muestre juntas las filas de ambas tablas que realmente están relacionadas.

unidad5_html_7c6dfe7e_1.png

Figura 5.15. Parte del resultado de consultar Generos y Peliculas sin indicar que están relacionadas

Una vez hemos añadido la tabla Generos, elegimos qué campos queremos mostrar de ella. En este caso, nos basta con el campo Nombre (ver Figura 5.16)

unidad5_html_m6aed7695_1.png

Figura 5.16. Añadimos campos de segunda tabla

Una vez que hemos elegido el campo, no debemos olvidar comprobar que la opción "Visible" está marcada para que se muestre este campo en el resultado de la consulta (ver Figura 5.17).

figura0517.jpg

Figura 5.17. Opción visible del campo añadido marcada

En la opción "Alias" del campo Nombre de la tabla Generos vamos a mostrar la palabra "Género" para que cualquier usuario entienda mejor lo que mostrará esta columna (ver Figura 5.18).

unidad5_html_74a99900_1.png

Figura 5.18. Cambio de Alias del campo Nombre de Generos

Dentro del modo Diseño podemos comprobar si la consulta devuelve lo que queremos sin necesidad de cerrar esta ventana y lanzar la consulta desde el menú principal. Para ello, basta con seleccionar el icono de ejecución de la consulta que se encuentra situado el segundo por la derecha en la fila de iconos superiores. Así, nos aparece entonces en la parte superior de la ventana el resultado de la consulta (ver Figura 5.19).

figura0519.jpg

Figura 5.19. Resultado de la consulta dentro del modo Diseño

Si estamos conformes con el resultado, guardamos la consulta y podemos ver en la ventana principal (ver Figura 5.20) que las dos consultas de esta unidad aparecen ya almacenadas.

unidad5_html_m67dd1575_1.png

Figura 5.20. Consultas disponibles

4. Ejercicios propuestos

1.Crear la consulta Consulta_Interpretes del segundo apartado de esta unidad.
2.Crear la consulta Consulta_Peliculas_Generos del tercer apartado de esta unidad.



Fuente: Tutorial de OpenOffice.org Base
Autor: Álvaro E. Prieto Ramos. Universidad de Extremadura
Bajo licencia de Creative Commons.

Búsquedas