Consultas

    

Tablas Campos Formularios Consultas Relaciones Volver

CONSULTAS DE BASES DE DATOS

La consulta es una solicitud de información a la base de datos. Los datos mostrados pueden proceder de una sola tabla o de un conjunto de tablas. El resultado de la consulta es la "Hoja de respuestas dinámica"; en esta hoja se encuentra la información extraída de las tablas. Pero la información no se guarda en la hoja de respuestas, sino que sigue estando almacenada en las tablas.

En determinados tipos de consulta se puede modificar la información de las tablas, pero la consulta sigue siendo una forma de acceder a la tabla, no un objeto que almacene información. La consulta muestra lo que la tabla almacena según los criterios solicitados.

La consulta es un filtro avanzado, y funciona prácticamente de la misma forma. Lo único que los diferencia es que los filtros sólo se pueden activar desde una tabla o desde un formulario. 

¿Qué puede hacer una consulta?

Elegir tablas: las consultas se pueden realizar sobre una sola tabla o sobre todas las tablas creadas en esa base de datos. De esta forma las combinaciones posibles para obtener información son muchas.

Modificar los datos de las tablas: aunque las consultas no son tablas, dan acceso a ellas, y permite modificar, eliminar o añadir registros nuevos. También se puede utilizar una consulta para crear una nueva tabla que contenga registros de otra tabla o de varias tablas.

Elegir uno o varios campos: al crear una consulta es posible especificar qué campo se desea ver.

Seleccionar registros: una consulta se puede concretar hasta el punto de ver sólo un registro.

Realizar cálculos: se pueden realizar cálculos con los campos mostrados en la consulta. Por ejemplo contar el número de registros seleccionados o acumular totales. Se crearán campos nuevos: campos calculados que contendrán el resultado del cálculo.

Para crear nuevos formularios, informes o consultas: partiendo de los datos obtenidos en una consulta se pueden crear nuevos elementos.

TIPOS DE CONSULTAS

 

Consulta de selección

 

Es la más sencilla, se indican unos criterios para ver sólo lo que interesa de una tabla. Los datos aparecen en la Hoja de respuestas dinámicas, esta parece una tabla pero no lo es, sólo muestra los datos de una tabla o de varias tablas según los criterios de la consulta.

Aunque la hoja de respuestas dinámica no es una tabla se pueden introducir datos en las tablas a través de ella.

 

 Consulta de tablas de referencias cruzadas

 

Presenta los datos con títulos en las filas y en las columnas; la apariencia es la de una hoja de cálculo. De esta forma se resume en muy poco espacio mucha información de una forma muy clara. 

 Consulta de acciones

 

Es una forma de modificar registros de una o varias tablas a través de una sola operación. A través de este tipo de consulta también se puede crear una nueva tabla, eliminar o añadir registros, modificarlos... 

 Consulta de unión

Combina campos que coinciden en más de una tabla. 

 Consulta de paso a través

Envía instrucciones a una base de datos SQL. 

Consulta de definición de datos

Se puede modificar una base de datos de Access utilizando instrucciones de SQL.

 

COMO CREAR UNA CONSULTAS

 

Para crear una consulta hay que seleccionar la pestaña  de la ventana de la base de datos. Si no se está en la ventana Base de datos, para volver a ella se pulsa el botón base de datos . En la ventana Consultas puede aparecer algún elemento creado si se ha guardado algún filtro:

 

 

Para crear una consulta nueva se pulsa el botón Nuevo. Aparecerá esta ventana:

 

 

 Estas son las opciones que ofrece Access para crear una consulta:

 

1. Vista diseño: permite realizar una consulta sin la ayuda del asistente.

 

2. Asistente para consultas sencillas: crea una consulta automáticamente, según los campos seleccionados.

 

3. Asistente para consultas de referencias cruzadas: crea una consulta que muestra los datos con un formato compacto, parecido al de una hoja de cálculo.

 

4. Asistente para consultas destinados a buscar duplicados: crea una consulta en la que se buscan registros con valores duplicados en un campo.

 

5. Asistentes para consultas destinados a buscar no-coincidentes: crea una consulta que busca registros que no tienen registros relacionados en otra tabla.

 

Crear una consulta sin asistentes

 

Dentro de la ventana de Nueva Consulta se selecciona la opción Vista Diseño y se pulsa Aceptar. Automáticamente se abrirá la ventana de la consulta e inmediatamente otra ventana donde se debe elegir en que tabla/s se va a realizar la consulta.

 

 

En este ejemplo se va a elegir la tabla Pacientes. Tras seleccionar la tabla se pulsa Agregar. Se pueden seleccionar más tablas, e incluso consultas. Una vez se hayan elegido los elementos sobre los que se quiera realizar la consulta se pulsa Cerrar.

 

Si tras cerrar se quiere volver a abrir la ventana de agregar Tablas se pulsa el botón  o se selecciona el menú Consulta|Mostrar Tabla.

El aspecto de la ventana de una consulta es este:

 

Al igual que en los filtros, la ventana se divide en dos secciones:

 

La superior: muestra los elementos sobre los que se va a realizar la consulta.

 

La inferior: muestra los criterios que se van a aplicar en la consulta a la tabla o consulta seleccionada.

 

El proceso de creación de los criterios es muy similar al de los filtros.

 

En las consultas hay un elemento más, que da la opción de que un criterio de selección se vea o no. Esta opción es Mostrar. 

Campo

 

En esta casilla se pueden seleccionar todos los campos de la tabla ( con el *) o de uno en uno, seleccionando cada uno en una columna.

La forma de incluir el nombre de un campo en esta casilla es :

 

1. Arrastrando el nombre del campo desde la sección superior.

2. Haciendo doble clic en la tabla de la sección superior

3. Haciendo clic sobre la casilla campo y pulsando sobre la flecha que aparece. Se desplegará un lista de los campos para seleccionar. 

Tabla

En esta casilla figura la tabla de la que procede el campo seleccionado en esa columna. Esta opción es muy importante cuando se trabaja con campos de varias tablas. 

Orden

Ascendente, descendente o sin orden. Este orden se aplicará a los registros que se obtengan en la consulta según la columna en la que se esté indicando el orden. El criterio se establece en un campo y se ordenan los resultados en función del campo que se quiera.

 

Para seleccionar el tipo de orden que se quiere se hace clic sobre la casilla Orden, aparecerá una flecha en la zona derecha de la casilla. Al pinchar sobre la flecha aparece un menú con los tipos de orden aplicables a la consulta. 

 Mostrar

Esta casilla tiene un pequeño cuadrado, al hacer clic dentro de este cuadrado se está indicando al programa que se muestre ese campo. Esto tiene sentido cuando se quiere indicar un criterio más para restringir la búsqueda, pero no se quiere mostrar en el resultado de la búsqueda. Si la casilla esta activada  este criterio aparecerá. Si no está activada pueda pero no será visible en la tabla dinámica.

 

 Criterios

En esta casilla se introduce la condición/es que debe cumplir un campo para que el registro aparezca en la respuesta a la consulta.

Cuando se ejecuta la consulta, el programa analiza la expresión de la casilla criterios. Dentro del campo se buscan todos los valores que coincidan con el criterio. Los criterios pueden introducirse en uno o más campos de una consulta. O incluso introducir varios criterios en un mismo campo.

 

No es necesario rellenar todas las casillas en cada columna. Todo depende de lo que se quiera pedir al programa.

 

Una forma más sencilla de ver una búsqueda es un ejemplo. Con la tabla de Pacientes se va a realizar el siguiente ejemplo: Buscar los pacientes que vivan en Madrid.

 

En este ejemplo sólo se establece un criterio en un campo: "Provincia", y el criterio "Madrid". De todos aquellos registros en los cuales el campo Provincia sea Madrid se le pide que muestre: el nombre y el apellido de los pacientes, además del criterio, que no está oculto. Si no se le añaden más campos no mostrará más datos del registro que cumple el criterio.

 

Para ejecutar la consulta se pulsa el botón o se selecciona el menú Consulta|Ejecutar.

 

El programa devolverá el o los registros que cumplan con ese criterio, si es que los hay. Para mostrar los resultados se abrirá la Hoja de respuesta dinámica en la Vista Diseño. En esta hoja aparecerán únicamente los datos solicitados en la Consulta.

 

Para modificar los criterios de una consulta se cambia a la Vista Diseño. Si se quiere que se muestren todos los datos de los pacientes procedentes de Madrid habrá que hacerlo de la siguiente forma.

 

Se ha establecido el criterio Madrid en el campo Provincia. A continuación en lugar de detallar cada campo en una columna se han seleccionado todos los campos en una sola celda con el asterisco. Se ha ocultado el criterio, pero se muestran todos los campos de la Tabla Pacientes. Se ejecuta la consulta pulsando es resultado será este:


 Establecer criterios

 

Dentro de la casilla criterio se escribe una expresión, bien de texto, numérica o numérica con operadores. Si no se incluye ningún operador con la expresión (texto o número) el programa actúa como si el operador fuera "=", y sólo habrá resultado en la búsqueda si existe un registro idéntico a la expresión del criterio.

 

Gracias a los operadores, además de palabras, se pueden imponer otro tipo de condiciones a las búsquedas dentro de los registros.

 

Rangos de valores

 

Para buscar un rango de valores dentro de un campo se utilizan estos operadores:

 

Entre...Y: por ejemplo para seleccionar los pacientes mayores de 18 años pero menores de 50. En la casilla Criterios se escribira: Entre 18 Y 50.

 

<,>,>=,<=,<>: operadores de comparación. 

Lista de valores

 

Se puede poner más de un criterio, especificando cada uno de ellos. La redacción de esta expresión deberá ser de la siguiente forma: el operador En seguido de una lista de valores entre paréntesis, separando los valores con el punto y coma. Por ejemplo para seleccionar todos los pacientes de tres provincias, en el campo Provincia se utilizaría este criterio:

 

En ("Madrid";"Aragón"; "País Vasco")

 

De esta forma el programa seleccionará todos aquellos registros que en el campo provincia tengan uno de estos tres valores.

 

Varios criterios

 

En diferentes campos: criterio Y: cuando se escriben varios criterios en el mismo renglón el programa buscará un registro que cumpla todos los criterios.

 

El criterio Y se puede utilizar en un mismo campo: >80 Y <100

En un mismo campo: criterio O: cuando se pone un criterio en la casilla "Criterio", otro en la casilla o, y si se quiere más criterios en las filas de debajo. El programa buscará un registro que cumpla al menos uno de los criterios.

 

Este criterio también se puede utilizar en distintos campos:

 

Seleccionará los registros que o el campo provincia sea Madrid, o bien el campo edad sea mayor de 18. 

 Los comodines

 

Se utilizan para buscar datos genéricos, que empiezan por una letra, que terminan por otra...

 

* representa cualquier número de caracteres, por ejemplo: todos los nombres que terminen por "ez: *ez. Otro ejemplo: buscar las personas que tienen un nombre compuesto y uno de los dos nombres es "Luis". Se debe escribir el siguiente criterio: Como *Luis* o Como * + Luis + *. Access agregará las comillas.

 

? representa un solo carácter, por ejemplo Jimenez/Gimenez: ?imenez.

 

# representa cualquier dígito en la posición especificada. Por ejemplo: 12#45,el programa buscará un registro en el cual los dos primeros dígitos sean 12 y los dos últimos 45.

 

Al introducir una expresión con uno de estos tres operadores, Access añadirá automáticamente el operador "Como".

 

8.5.5. Selección de registros con datos o sin datos

 

Se puede seleccionar un registro por el criterio de si en el campo hay un dato, o si está vacio.

 

Porque contiene algún dato: Es Negado Nulo

Pacientes que tienen teléfono:

Porque no contiene ningún dato: vacío: Nulo o es Nulo

Pacientes que no tienen teléfono:


 Fecha actual

 

Se pueden seleccionar los registros que tengan la fecha actual. Por ejemplo en una empresa para seleccionar los pedidos que haya que entregar ese día.

 

En criterios se escribe Fecha() 

Condición variable

 

Para hacer una condición variable; que realice una pregunta cada vez que se abra o ejecute la consulta, se coloca la pregunta entre corchetes [ ] debajo del campo que se desea variar. (ver consultas con parámetros).

 

Criterios con cálculo

 

Dentro de un criterio se puede realizar un cálculo haciendo referencia a otro campo. Por ejemplo en la base de datos de una empresa de venta de material de construcción se va a consultar:

 

Se pide que liste a aquellos clientes cuyo Importe sea mayor a la cantidad por 10.

 

Se ha creado el campo importe ya que no existía, que es un campo calculado (apartado 8.7). Los campos van siempre entre corchetes.

Dentro del criterio se ha realizado una operación y en función del resultado se han seleccionado o no los registros.

 

Guardar las consultas

 

Siempre es recomendable que se prueben varias veces las consultas para asegurarse que el resultado es el esperado.

 

Una vez se comprueba que el resultado es el que se esperaba, hay que pensar en guardar o no la consulta. Todo depende de la frecuencia con la que se vaya a usar esa consulta. Si se va a usar más veces es conveniente guardarla para no tener que rediseñarla la próxima vez.

 

La consulta se puede guardar desde la vista Diseño o la vista Hoja de datos. Se selecciona el botón guardar  o el menú Archivo|Guardar.


 Campos calculados


Se puede crear un campo que realice una operación con varios campos de una misma tabla.

 

En el ejemplo de le empresa de venta de materiales de construcción se ha creado el campo calculado "Importe".

 

Pasos para crear un campo calculado:

 

1. Se selecciona una columna en blanco, se escribe el nombre del nuevo campo seguido de dos puntos. "Importe:"

2. Se escribe la operación, cuando se hace referencia a un campo este debe ir entre corchetes [ ].

"Importe: [Cantidad] *[Precio Unidad]


Si sólo se va a operar con un campo, se puede seleccionar el campo de la lista de campos y al añadir un símbolo de operación: /*-+ el programa añadirá el corchete al campo y pondrá un nombre al nuevo campo. El nombre será Expr, Expr1...

 

 Crear consultas con asistentes

 

 Asistente para consultas sencillas

 

El Asistente para consultas sencillas crea consultas que recuperan datos de los campos especificados en una tabla o consulta, o en varias tablas o consultas.

 

Si se desea, el asistente también puede sumar, contar y obtener el promedio de los valores de grupos de registros o de todos los registros y puede calcular el valor mínimo o máximo de un campo. No obstante, no es posible limitar los registros recuperados mediante el establecimiento de criterios. 

 Asistente para consultas de referencias cruzadas

 

Una consulta de tabla de referencias cruzadas calcula totales resumidos basándose en los valores de cada fila y columna. Calcula una suma, una media, un recuento u otros tipos de totales de los registros y luego agrupa el resultado en dos tipos de información: uno hacia abajo, en el lado izquierdo de la hoja de datos y otro a lo largo de la parte superior.

 

Asistente para consultas de buscar duplicados

 

Con este asistente se puede determinar si existen registros duplicados en una tabla o determinar qué registros de una tabla comparten el mismo valor. Por ejemplo, se pueden buscar valores duplicados en un campo de dirección para determinar si existen registros duplicados para el mismo paciente.

 

También se pueden buscar valores duplicados en un campo de población para todos los pacientes de una misma ciudad.

 

Puede ser una herramienta útil si se han importado datos desde otra base de datos, ya que permite depurarlos. 

 Asistente para buscar registros no coincidentes

 

Mediante este Asistente se pueden buscar registros en una tabla que no tenga registros relacionados en otra tabla. Por ejemplo, puede buscar pacientes que no hayan realizado ninguna visita.

 

También es útil si se han importado datos desde otra base de datos, ya que permite depurarlos.

 

 Consultas con parámetros

 

Se recurre a ellas cuando se quiere hacer una consulta que permita pedir un dato antes de ejecutarla y buscar según ese dato.

 

Una consulta que tiene uno o varios parámetros necesitará que éstos se indiquen para buscar datos en la tabla.

 

Por ejemplo, para realizar una consulta sobre los nombres de los médicos que trabajan en un determinado departamento de un hospital, se tendrá que hacer una consulta por especialidad utilizando el procedimiento habitual. Si se utiliza una consulta diseñada con parámetros se podrá decir qué especialidad se busca cada vez que se ejecute una nueva consulta.

 

El proceso es muy parecido al de una consulta normal. Se selecciona la tabla, se seleccionan los campos y los criterios. En este caso se va a utilizar la tabla de médicos.

 

Después de crear una consulta normal se selecciona el menú Consulta|Parámetros. Se abrirá esta ventana: 
 

Se crean los parámetros deseados, cada parámetro tiene un nombre y un tipo de datos. El nombre no puede ser igual al nombre de un campo de la tabla y el tipo de datos debe corresponder con el tipo de datos del campo por el que se va a buscar.

 

En el campo por el que se va a buscar hay que añadir el criterio. En este caso el criterio es el nombre del parámetro entre corchetes:

 

Cuando se ejecute la consulta aparecerá una ventana que pide el valor del parámetro.

 

Dentro del recuadro en blanco se escribe la especialidad sobre la que se desea obtener la lista de médicos que trabajan allí. Después se pulsa Aceptar. Esta será la hoja de respuestas dinámica:

 

Consultas basadas en más de una tabla

 

Se crean de la misma forma que las anteriores, sólo que a la hora de agregar tablas se puede agregar más de una. De esta manera es posible reflejar las relaciones entre las tablas, y recuperar los registros relacionados de las dos tablas.

 

De cada tabla se seleccionan los campos que se necesitan, arrastrándolos y pegándolos en las celdas de la consulta. Se agregan los criterios que se crean convenientes, de la misma manera que en las consultas basadas en una sola tabla.

 

Consultas avanzadas

 

Hasta ahora la consulta que se ha visto ha sido la consulta de selección, una consulta muy sencilla. Para seleccionar otro tipo de consulta más compleja se debe seleccionar el botón tipo de consulta:

 

 Consulta de creación de tabla

 

Este tipo de consulta puede ser usada cuando se quiera crear una tabla nueva a partir de registros provenientes de ejecutar una consulta. La nueva tabla no heredará las propiedades de los campos, ni la clave principal que tuviera la tabla origen.

 

 Consulta de actualización

 

Este tipo de consultas pueden ser usadas cuando se quiera actualizar varios registros de una tabla, de una sola vez. Se pueden ver los registros a actualizar antes de ejecutar la consulta y que sean modificados permanentemente.

 

 Consulta de datos anexados

 

Este tipo de consultas pueden ser usadas cuando se quiera añadir registros a una tabla de otra que ya contenga algunos. Entonces, se podrán agregar datos que estaban en otra tabla de Access o bien en otros formatos de Tabla, como pueden ser DBase, Paradox.

 

 Consulta de eliminación

 

Este tipo de consultas pueden ser usadas cuando se quiera eliminar varios registros de una tabla que cumplan determinados criterios. Es posible ver los registros que van a ser eliminados antes de ejecutar la consulta.

Volver