CREAR UNA CONSULTA EN ACCESS

En la LECCIÓN ANTERIOR aprendiste que las relaciones son para unir tablas que permiten acceder rápidamente a la información almacenada, sin necesidad de abrir cada una de las tablas que contienen los datos. En este capítulo vas a conocer como crear una consulta en access.

¿QUÉ ÉS UNA CONSULTA?

Las consultas que se utilizan para recuperar datos de una tabla o realizar cálculos se denominan consultas de selección. Las consultas que agregan, cambian o eliminan datos se denominan consultas de acción.

Las bases de datos relacionales se componen, en el nivel más básico, de tablas que guardan relaciones lógicas entre ellas. Las relaciones se usan para conectar las tablas en los campos que tienen en común. Una relación viene representada en una consulta por medio de una combinación.

Cuando se agregan tablas a una consulta, Access crea combinaciones basadas en las relaciones que se han definido entre las tablas. Se pueden crear manualmente combinaciones en las consultas, incluso si no representan relaciones ya definidas.

Si se usan otras consultas (en vez de las tablas o además de ellas) como origen de los datos de una consulta, se pueden crear combinaciones entre las consultas de origen y también entre esas consultas y todas las tablas que se usen como origen de datos.

Las combinaciones se comportan de manera similar a los criterios de consulta ya que establecen reglas que deben cumplir los datos que se van a incluir en las operaciones de consulta.

A diferencia de los criterios, las combinaciones especifican asimismo que cada par de filas que cumplan las condiciones de combinación se combinen en el conjunto de registros para formar una sola fila.

SUBIR

DISEÑO DE UNA CONSULTA

Las consultas se pueden crear manualmente o mediante un asistente. Para comenzar a trabajar con consultas, aprenderemos a hacerlo de modo manual, a través de la Vista Diseño. Esta vista es la que permite establecer su estructura, es decir, indicar cuáles son las tablas que poseen los datos que vamos a seleccionar, así como también el o los criterios que utilizaremos para filtrar los datos.

Para crear una consulta desde la Vista Diseño, debemos ingresar en la ficha Crear y hacer clic sobre el botón Diseño de consulta, del grupo Consultas.

En la imágen podemos apreciar como crear una consulta desde el inicio en vista de diseño.
En la imágen podemos apreciar como crear una consulta desde el inicio en vista de diseño.

A continuación, se presenta el cuadro de diálogo Mostrar tabla. En este, debemos seleccionar todas aquellas tablas que contienen los datos que queremos consultar y tenemos que pulsar el botón Agregar cada vez.

Al crear una consulta se presenta el cuadro de diálogo mostrar tabla.
Al crear una consulta se presenta el cuadro de diálogo mostrar tabla.

A medida que agregamos tablas, las vamos visualizando en la pestaña de la consulta. Después de ingresar todas las tablas necesarias, pulsamos Cerrar.

Se agregan las tablas necesarias para realizar la consulta.
Se agregan las tablas necesarias para realizar la consulta.

Llegado a este punto, solamente nos queda agregar los campos que necesitemos de las tablas seleccionadas en la consulta. Se pueden agregar mediante "doble clic" o arrastrando el campo a la grilla directamente. Una vez realizado el trasvase a la grilla podemos iniciar la consulta (hacer clic en el botón ejecutar de la cinta de opciones).

Para crear la consulta daremos clic en el botón ejecutar de la cinta de opciones.
Para crear la consulta daremos clic en el botón ejecutar de la cinta de opciones.

Recuerda:
01.- Seleccionar las tablas que necesitamos para crear una consulta en access (desde la cinta de opciones, pulsamos en la pestaña de "crear" y escogemos el botón "diseño de consulta" para que se nos abra una ventana con todas las tablas y consultas disponibles).

02.- Seleccionar el o los campos sobre los que queremos realizar la consulta (haciendo doble clic o arrastrándolos a la grilla).

03.- Dentro de la cinta de opciones hacer clic en el botón "ejecutar" y automáticamente saldrá la consulta.

Dentro de la cinta de opciones hacer clic en el botón "ejecutar" y automáticamente saldrá la consulta.
Dentro de la cinta de opciones hacer clic en el botón "ejecutar" y automáticamente saldrá la consulta.
RECUERDA QUE...
La inclusión de campos en una grilla es lo que determina los datos que se consultarán. Una manera distinta de agregar campos en ella es hacer un clic sostenido desde el campo elegido hasta la primera columna vacía. El procedimiento que utilicemos para agregar los campos no modificará los resultados.
loading...
SUBIR

EJERCICIO DE PRÁCTICAS

EJERCICIO 17

En este momento tenemos una tabla "CLIENTES" y otra tabla llamada "DESCUENTOS" que por sí solas no me muestran la información directa. Lo que quiero es hacer una consulta en el que sepa los descuentos aplicados a cada cliente.

La pista: La consulta debe contener los campos esenciales del cliente (Codcliente, nombre, apellidos) y los campos esenciales de la tabla "DESCUENTOS".
Recuerda que si no sabes hacerlo, siempre puedes repasarte la lección.

Si todo ha ido bien, debes tener algo parecido a la siguiente imágen:

Consulta creada haciendo clic en el botón ejecutar de la cinta de opciones.
Consulta creada haciendo clic en el botón ejecutar de la cinta de opciones.

Aunque no te lo creas acabas de crear una consulta de datos que provienen de diferentes tablas. Ante todo, al principio debes ir con cuidado debido a que en la consulta se pueden cambiar datos. Más adelante te enseñaré a como bloquear las casillas de registros para que no puedas introducir por error un dato.
Ahora al salir de la pestaña "consulta 1" guarda la consulta con el nombre "con-descuento" y verás que automáticamente aparece en el menú lateral de objetos debajo de "consultas".

SUBIR

TIPOS DE COMBINACIÓN

Hay cuatro tipos básicos de combinación: combinaciones internas, combinaciones externas, combinaciones cruzadas y combinaciones de desigualdad.

COMBINACIONES INTERNAS:

Las combinaciones internas son el tipo de combinación más común. Indican a una consulta que las filas de una de las tablas combinadas corresponden a las filas de otra tabla, basándose en los datos incluidos en los campos combinados.

Cuando se ejecuta una consulta con una combinación interna, se incluirán en las operaciones de consulta únicamente las filas en las que haya un valor común en ambas tablas combinadas.

Se usa una combinación interna cuando se desea que se devuelvan únicamente las filas de ambas tablas de la combinación que coinciden en el campo combinado.

En la mayoría de los casos, no hay que hacer nada para poder usar una combinación interna. Si se han creado relaciones entre las tablas en la ventana Relaciones, Access crea automáticamente las combinaciones internas cuando se agregan tablas relacionadas en la vista Diseño de la consulta.

Si se aplica la integridad referencial, Access muestra asimismo "1" sobre la línea de combinación para indicar la tabla del lado "uno" de una relación uno a varios así como el símbolo de infinito (∞) para indicar la tabla del lado "varios".

COMBINACIONES EXTERNAS:

Las combinaciones externas indican a una consulta que, si bien algunas de las filas en ambos lados de la combinación coinciden exactamente, la consulta debe incluir todas las filas de una tabla así como las filas de la otra tabla que comparten un valor común en ambos lados de la combinación.

Las combinaciones externas pueden ser combinaciones izquierdas o combinaciones derechas. En una combinación izquierda, la consulta incluye todas las filas de la primera tabla y sólo las filas de la otra tabla donde el campo de combinación contiene valores comunes de ambas tablas. En una combinación derecha, la consulta incluye todas las filas de la segunda tabla y sólo las filas de la otra tabla donde el campo de combinación contiene valores comunes de ambas tablas.

Se usa una combinación externa cuando se desea que los resultados incluyan todas las filas de una de las tablas de la combinación y se desea que la consulta devuelva sólo las filas de la otra tabla que coinciden con la primera tabla del campo de combinación.

Las combinaciones externas se crean modificando las combinaciones internas.

COMBINACIONES CRUZADAS:

Las combinaciones cruzadas se diferencian de las combinaciones internas y externas en que no se representan explícitamente en Access. En una combinación cruzada, cada fila de una tabla se combina con cada fila de otra tabla, generando lo que se denomina un producto cruzado o producto cartesiano.

Cada vez que se ejecuta una consulta con tablas que no están explícitamente combinadas, se genera un producto cruzado. Las combinaciones cruzadas suelen ser involuntarias, aunque hay casos en los que pueden resultar útiles. Se usa una combinación cruzada cuando se desea comprobar todas las combinaciones posibles de las filas de dos tablas o consultas.

Por ejemplo, supongamos que su negocio tiene un año fantástico y está considerando la posibilidad de ofrecer descuentos a sus clientes. Podrá crear una consulta que sume las compras de cada cliente, crear una pequeña tabla con los posibles porcentajes de descuento y combinar las dos en otra consulta que lleve a cabo una combinación cruzada. El resultado será una consulta que muestre un conjunto de descuentos hipotéticos para cada cliente.

Se genera una combinación cruzada cada vez que se incluyen tablas o consultas en una consulta y no se crea al menos una combinación explícita para cada tabla o consulta. Access combina todas las filas de cada tabla o consulta que no está explícitamente combinada con ninguna otra tabla o consulta con cada dos filas de los resultados.

Contemplemos el caso de los descuentos del párrafo anterior. Imagina que tenemos 100 clientes y deseamos examinar cinco posibles porcentajes de descuento. La combinación cruzada genera 500 filas (el resultado de multiplicar 100 por 5).

Tal y como puedes imaginar, las combinaciones cruzadas involuntarias pueden crear un número considerable de filas en los resultados de consulta. Es más, estos resultados suelen no tener sentido porque, si en realidad la intención no es combinar cada fila con cada dos filas, la mayoría de las filas combinadas que aparecen en los resultados no tendrán ningún sentido.

En último lugar, las consultas que usan combinaciones cruzadas involuntarias pueden tardar mucho tiempo en ejecutarse.

COMBINACIONES DE DESIGUALDAD:

Las combinaciones no tienen que basarse necesariamente en la equivalencia de los campos combinados. Una combinación puede basarse en cualquier operador de comparación, como mayor que (>), menor que (<) o no es igual a (<>). Las combinaciones que no se basan en la equivalencia se denominan combinaciones de desigualdad.

Si deseas combinar las filas de dos orígenes de datos basándose en los valores de campo que no son iguales, se usa una combinación de desigualdad. Normalmente, las combinaciones de desigualdad se basan en los operadores de comparación mayor que (>), menor que (<), mayor o igual que (>=), o bien, menor o igual que (<=).

Las combinaciones de desigualdad que se basan en el operador no es igual a (<>) pueden devolver casi tantas filas como las combinaciones cruzadas, por lo que los resultados pueden ser difíciles de interpretar.

Las combinaciones de desigualdad no se admiten en la vista Diseño. Si desea usarlas, deberá hacerlo en la vista SQL. Sin embargo, se puede crear una combinación en la vista Diseño, cambiar a la vista SQL, buscar el operador de comparación igual a (=) y cambiarlo al operador que desee usar. Después, sólo podrá abrir la consulta en la vista Diseño si cambia primero el operador de comparación al operador igual a (=) en la vista SQL.

loading...
SUBIR

AGREGAR CAMPOS EN LAS CONSULTAS

Después de agregar las tablas al diseño de la consulta, debemos indicar cuáles son los campos que participarán en la selección de datos. Es posible añadir desde uno hasta todos los campos de las tablas que hemos agregado. En la fila Campo irán todos los campos que participarán de la consulta.

En nuestro caso, consultaremos los nombres y apellidos de los clientes que tengan el número de descuento mayor del 5% (es decir clientes oro y clientes VIP). Por lo tanto, los que necesitaremos son: Nombre, Apellido, Descuento y Descripción, ya que son los únicos que contienen la información que deseamos seleccionar.

Para poner los campos en cada columna de la grilla, podemos desplegar la lista Campo y seleccionarlos, o hacer doble clic sobre el que queremos, en la ventana de la tabla que corresponda.

Muchas veces, sucederá que el nombre de algún campo sea más ancho que la columna. Por eso, Access permite modificar el ancho de las columnas de la grilla, ya sea de manera manual o automática. Para ajustarla manualmente, debemos hacer un clic sostenido desde el borde derecho superior hasta la nueva posición (ya sea para aumentar o reducir el tamaño). Para ajustarla automáticamente, debemos hacer doble clic sobre el borde y Access aumentará o disminuirá el ancho de la columna, dependiendo de su contenido.

Cada columna de la fila Campo posee una lista desplegable con el nombre de los campos que contienen las tablas agregadas.
Cada columna de la fila Campo posee
una lista desplegable con el nombre de los campos que contienen las tablas agregadas.

La segunda fila de la grilla es la fila Tabla, que muestra el nombre de la tabla que contiene el campo elegido en cada columna y no es posible modificarlo, ya que lo presenta de forma predeterminada. Para cambiarlo, habría que modificar el nombre de la tabla directamente (la grilla muestra el nombre actual de la tabla).

Mediante la tercera fila de la grilla, es decir la fila denominada Orden, podemos indicar que los datos resultantes de la consulta se ordenen de manera ascendente o descendente, de acuerdo con uno o varios campos. Debemos elegir el orden en la columna que contiene el campo con los valores que queremos ordenar. Para realizar esto, desplegamos el menú de la celda correspondiente a la fila Orden y seleccionamos la opción elegida (Ascendente o Descendente).

Por ejemplo, si queremos que la información correspondiente a los clientes que posean un descuento mayor del 5% se muestren ordenados de forma descendente según su apellido, lo que debemos hacer es indicar el orden en la columna que contiene el campo Apellido.

Podemos indicar que los datos resultantes de la consulta se ordenen de manera ascendente o descendente.
Podemos indicar que los datos resultantes de la consulta se ordenen de manera ascendente o descendente.

Al crear una consulta, también disponemos de la posibilidad de mostrar u ocultar los campos en el resultado de la consulta. Para ello, utilizaremos la fila Mostrar. Esta fila posee una casilla de verificación en cada columna, que podemos activar o desactivar. Cuando la casilla correspondiente a un campo se encuentra activada, significa que dicho campo se mostrará en el resultado de la consulta.

En nuestro ejemplo, vamos a desactivar la casilla correspondiente al campo Descuento, ya que, aunque lo necesitemos en el diseño para establecer el criterio, no deseamos visualizarlo en el resultado.

Cuando la casilla correspondiente a un campo se encuentra activada, significa que dicho campo se mostrará en el resultado de la consulta.
Cuando la casilla correspondiente a un campo se encuentra activada, significa que dicho campo se mostrará en el resultado de la consulta.

En este momento si ejecutamos la consulta nos tiene que salir el siguiente resultado conforme a las instrucciones que hemos dado a Access:

El campo Apellidos se muestra en orden descendente y el campo Descuento no se muestra.
El campo Apellidos se muestra en orden descendente y el campo Descuento no se muestra.
RECUERDA QUE...
Es importante tener en cuenta que para realizar una consulta debe mostrase al menos uno de los campos. Para esto, siempre debemos verificar que esté activada, aunque sea, una casilla de la fila Mostrar, de los campos existentes en la grilla. De lo contrario, cuando intentemos guardar o ejecutar la consulta, Access mostrará un mensaje de error.
loading...
SUBIR

CRITERIO DE SELECCIÓN

El criterio de selección es uno de los campos más importantes de una consulta porque permite establecer una o varias condiciones que deben cumplir los registros para ser visualizados en el resultado de la consulta. Es decir que, solo se mostrarán como resultado de la consulta aquellos registros que cumplan con las condiciones especificadas.

Recordemos que en nuestro ejemplo anterior queremos visualizar únicamente los datos de los clientes que tengan un descuento mayor al 5% (solo los clientes oro y clientes VIP), por lo tanto, el criterio de selección (en la columna Descuento) que debemos establecer es: >=5/100 (es decir, la orden es que me seleccione del campo "Descuento" aquellos porcentajes que sean mayor (">") o igual ("=") al 5% (5/100)).

Los criterios deben escribirse en la columna que representa al campo, de lo contrario, no se mostrarán de manera correcta en los resultados de la consulta. Una vez ejecutada la consulta podemos volver al diseño de consulta clicando el botón "VER" (vista diseño) situado en el lado derecho de la cinta de opciones.
Los criterios deben escribirse en la columna que representa al campo, de lo contrario, no se mostrarán de manera correcta en los resultados de la consulta. Una vez ejecutada la consulta podemos volver al diseño de consulta clicando el botón "VER" (vista diseño) situado en el lado derecho de la cinta de opciones.

Es posible asignar más de un criterio de selección en cada consulta. Entonces, los resultados que se mostrarán son solo aquellos que cumplan con todos y cada uno de los criterios que han sido indicados. Es decir que deben cumplir con todas las condiciones impuestas para que podamos verlos en el resultado.

Por otro lado, existen criterios que pueden tener sintaxis más complejas, según los datos que se desean seleccionar. Por ejemplo,podemos visualizar únicamente aquellos clientes que pertenezcan a una zona de ventas determinada (barcelona), en los cuales sean clientes oro o vip (tomando el ejemplo anterior).

De esta manera, dos campos llevarán criterios, el campo "Descuento" de la tabla DESCUENTO y el campo "Descripción" de la tabla ZONAS. Los criterios deben escribirse en la misma fila para que Access verifique que ambos cumplan con lo establecido. Mediante la combinación de criterios de selección, podemos obtener los resultados que se ajusten a lo buscado.

 En este caso, se han aplicado dos criterios, por un lado quiero que Access me diga cuántos clientes son tarjeta oro y cuántos clientes son VIP, y por otro quiero solo que me muestre los que son de barcelona.
En este caso, se han aplicado dos criterios, por un lado quiero que Access me diga cuántos clientes son tarjeta oro y cuántos clientes son VIP, y por otro quiero solo que me muestre los que son de barcelona.

El resultado final debería ser el siguiente:

Resultado de aplicar dos criterios diferentes a la vez..
Resultado de aplicar dos criterios diferentes a la vez..
RECUERDA QUE...
Si diferentes tablas tienen campos con el mismo nombre (caso que ocurre con el campo "descripción" de las tablas DESCUENTO y ZONAS) es muy probable que al agregar la tabla se cree automáticamente una relación entre ambos campos (que nada tiene que ver) por tanto, si os pasa esto, tendréis que borrar la relación clicando encima de la línea y pulsar la tecla "supr".
loading...
SUBIR

¿CÓMO CONTINUAR?

En la LECCIÓN ANTERIOR has aprendido todo lo necesario para unir campos de una tabla con los campos de otras. A esta unión se le llama relación.

En ESTE CAPÍTULO hemos aprendido lo que es una consulta y como es su diseño para que podamos realizarla correctamente. Para que no te olvides de lo aprendido has practicado con un ejercico, y has descubierto que una consulta tiene diferentes tipos de combinación. También has aprendido a agregar campos a una consulta, así como añadir criterios de selección que te permiten filtrar datos.

En el CAPÍTULO SIGUIENTE nos adentraremos en las consultas de selección, aprenderás diferentes tipos de criterios de consulta que te permitirán filtrar y calcular datos.

LAS CONSULTAS (ÍNDICE)
LAS CONSULTAS (ÍNDICE)
CONSULTA DE SELECCIÓN
CONSULTA DE SELECCIÓN

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Utilizamos cookies propias y de terceros para obtener datos estadísticos de la navegación de nuestros usuarios y mejorar nuestros servicios. Si acepta o continúa navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información en política de cookies

ACEPTAR
Aviso de cookies