You are on page 1of 19

12-May-11

Manual de Access - Consultas

Manual de Access

CAPTULO 3 CONSULTAS
3.1. Definicin. Una consulta recupera informaciones de la Base de Datos y eventualmente las presenta en la pantalla. Sern estudiados tres tipos de consultas:
De seleccin: selecciona y presenta registros en formato patrn De referencias cruzadas: selecciona y presenta registros en formato de planilla De accin: altera el contenido de registros en una nica operacin

Los registros seleccionados constituyen un conjunto. Este conjunto es dinmico en el sentido de que su contenido tiene por origen varias tablas y con el sentido de solo existir mientras la consulta est activa. Al cerrar una consulta, el conjunto de registros deja de existir. Esto constituye una gran ventaja pues si alteramos los datos de una tabla las consultas sobre ella automticamente reflejarn esas alteraciones. Las consultas constituyen un recurso prctico para obtener informaciones especficas contenidas en la Base de Datos. Con ellas podemos:
Elegir campos especficos de tablas especficas; Seleccionar informaciones va criterios; Mostrar las informaciones en varios rdenes; Obtener datos de varias tablas simultneamente; Calcular totales; Crear formularios e informes; Crear otras consultas y grficos.

3.2. Generar una nueva consulta. La obtencin de una nueva consulta es hecha a partir de la ventana Base de Datos, seleccionando Consultas y picando en la opcin Nuevo. En respuesta aparecer un cuadro de dilogo que le permite elegir el modo de cmo, la consulta, debe ser construida. O monta la consulta a travs del modo Vista Diseo o utiliza los Asistentes, que facilitan el montaje tanto de consultas como de informes, formularios, etc.

cyta.com.ar/biblioteca//consultas.htm

1/19

12-May-11

Manual de Access - Consultas

Al elegir el modo Vista Diseo, aparecer la ventana Consulta de Seleccin sobrepuesta con la ventana de dilogo Mostrar tabla. Para cada tabla o consulta a adicionar, seleccione su nombre y pique en el botn Agregar. En el caso que se adicione una tabla / consulta equivocada, basta seleccionarla y apretar DEL para borrarla del rea de tablas.

FIGURA 3.1Ventana Mostrar tabla de consulta.


cyta.com.ar/biblioteca//consultas.htm 2/19

12-May-11

Manual de Access - Consultas

La activacin de la ventana de dilogo Mostrar tabla tambin puede ser realizada a travs del men Consulta opcin Mostrar tabla o por el botn correspondiente en la barra de herramientas. La ventana Consulta Seleccin posee dos reas, el rea de las tablas envueltas en la consulta y el rea de la consulta propiamente dicha. En esta ltima rea el montaje de la consulta es hecho a travs del esquema QBE (Query By Example). En este esquema creamos las consultas arrastrando campos del rea superior de la ventana para el rea inferior. En la planilla QBE cada columna contiene informaciones al respecto del campo incluido en la consulta.

FIGURA 3.2 Barra de herramientas de la ventana Consulta. La figura 3.3 muestra la estructura de la consulta que fue denominada "Ingenieros de la Empresa". Al accionar la ejecucin de la consulta aparece el resultado presentado en la figura 3.4. Esta figura muestra que el resultado es presentado en una hoja de datos que, en principio, puede ser tambin usada para alterar y excluir registros.

cyta.com.ar/biblioteca//consultas.htm

3/19

12-May-11

Manual de Access - Consultas

FIGURA 3.3 Estructura de la Consulta Ingenieros de la Empresa.

FIGURA 3.4 Hoja de Datos de la consulta Ingenieros de la empresa 3.3. Adicionar campos a la consulta. Inicialmente se debe seleccionar los campos en la tabla. Se Puede seleccionar varios campos picando y apretando simultneamente SHISFT o CTRL. Enseguida, apuntar para alguno de los campos seleccionados y arrastrarlo para la lnea Campo: en el rea inferior. Tambin es posible adicionar un campo seleccionndolo desde el Campo en el rea inferior.
cyta.com.ar/biblioteca//consultas.htm 4/19

12-May-11

Manual de Access - Consultas

Basta abrir el cuadro de combinaciones que aparece cuando el punto de insercin est posicionado en el rea del Campo y elegir entre los campos listados. Para adicionar todos los campos de la tabla a la planilla QBE es necesario inicialmente seleccionar todos los campos. Hay un atajo para esta tarea: basta picar dos veces en la barra de ttulo de la tabla. Otro mtodo consiste en el arrastre de la lnea de asterisco (*) de la tabla para algn campo de la parte inferior. Mientras tanto, en este caso l arrastra toda la tabla y produce un efecto secundario interesante: en caso que la tabla vaya a ser alterada en su estructura, por adicin/exclusin de campos, no ser necesario rehacer la consulta. Por otro lado, campos QBE basados en asterisco no admiten criterio de clasificacin y seleccin. Para insertar un campo entre otros ya existentes en la planilla QBE basta arrastrar un campo seleccionado, en la parte superior, para el campo que quedar a la derecha del campo insertado. Para reordenar campos en la planilla QBE basta seleccionar y arrastrar para otra posicin. Para eliminar un campo, basta seleccionar y dar DEL. Para remover todos los campos de la planilla use la opcin Borrar cuadrcula del men Edicin. El texto que identifica columnas, en la hoja de datos, es el nombre del campo. Muchas veces ese nombre es largo y se desea substituirlo por otro. Para ello basta preceder al nombre del campo en la planilla QBE con el nombre deseado seguido de dos punto. Ejemplo: Cargo: Cdigo del cargo. Mientras tanto, si la columna posee la propiedad leyenda esta tendr prioridad. Eventualmente si es necesario utilizar un campo en una consulta sin que haya necesidad de mostrarlo en la hoja de datos, por ejemplo, cuando ese campo participa de la llave de clasificacin. En este caso basta desactivar la marca de Mostrar correspondiente en la planilla QBE. 3.4. Clasificacin de los datos presentados. Basta especificar el orden de clasificacin (creciente o Decreciente) de los campos que hacen parte de la llave de clasificacin. Observar que el orden de los campos pasa a ser importante y, eventualmente, es necesario reordenar las columnas en relacin a su orden en la tabla original. Nada impide que un campo de la tabla concurra dos o mas veces como campo en la planilla QBE. Eventualmente esa puede ser una solucin interesante para poder usar el campo en la llave de clasificacin (donde su posicin es fija) desactivando su presentacin en la lnea Mostrar; la segunda versin del campo es exhibida en la posicin deseada por el usuario. El mismo efecto puede ser utilizado en conjunto con campos de la planilla QBE oriundos de asterisco. Como no es posible usar criterios de seleccin y clasificacin para campos asterisco (*), basta incluir un duplicado de los campos necesarios. Para esos campos duplicados son establecidos los criterios de clasificacin y seleccin concomitantemente con la desactivacin de su presentacin en la lnea Mostrar de la planilla QBE 3.5. Grabar e imprimir consultas.
cyta.com.ar/biblioteca//consultas.htm 5/19

12-May-11

Manual de Access - Consultas

Para grabar la consulta, use las opciones Guardar y Guardar como o Exportar del men Archivo. Para imprimir la consulta debemos estar en la hoja de datos y accionar Vista preliminar para ver el layout de la hoja a ser impresa. La opcin Imprimir del men Archivo realiza la impresin permitiendo eventualmente imprimir apenas los registros seleccionados en la hoja de datos. Para eso, basta elegir la opcin Registro Seleccionados como Intervalo de Impresin. 3.6. Criterios de Seleccin conteniendo un nico campo. Como criterio de seleccin en la planilla QBE podemos emplear diversos tipos de expresin envolviendo diversos tipos de funciones internas. El resultado de algunos criterios ejemplos es presentado a continuacin. :
>520 todos los nmeros mayores a 520 entre 520 y 1528 todos los nmeros entre 520 y 528 inclusive ="Carlos Moreira" todos los exactamente iguales a "S*" todos los iniciados con la letra S "fe*eira" por ejemplo: ferreira, fereira, festeira "sm?th" por ejemplo: smith, smyth "* * *" nombres de tres palabras separadas por un blanco */*/93 todas las fechas del 93 negado como "S*" todos los nombres no iniciados por S >=1-ene-92 y <=20-feb-93 todas las fechas del intervalo "S*" o "R*" todos los iniciados por la letra S o R nulo todos los registros con campo nulo negado nulo todos los registros con valor en el campo fecha() todos con la fecha actual entre fecha() y fecha()-7 todos con fecha de la ltima semana

3.7. Criterios de seleccin comprendiendo mas de un campo. En este caso se emplean las lneas Criterio: , o: y lneas siguientes de la planilla QBE. Se debe observar la siguiente regla para definir expresiones entre varios campos:
Expresiones ligadas por y quedan en la misma lnea Expresiones ligadas por o quedan en lneas diferentes.
cyta.com.ar/biblioteca//consultas.htm 6/19

12-May-11

Manual de Access - Consultas

Los ejemplos siguientes aclaran la cuestin. Seleccionar todos los ingenieros y que sean del departamento de finanzas:

FIGURA 3.5 a. Todos los ingenieros o Empleados del departamento de finanzas:

FIGURA 3.5 b.
cyta.com.ar/biblioteca//consultas.htm 7/19

12-May-11 FIGURA 3.5

Manual de Access - Consultas b. Todos los ingenieros de nivel 2 del departamento de marketing o ingenieros nivel 2 con nombres comenzados por la letra R.

FIGURA 3.5 c. FIGURA 3.5 (a) (b) (c) Selecciones comprendiendo mas de un campo. 3.8. Seleccin con valores nicos sin repeticin. Si el problema es el de exhibir los cargos constantes del PADRN DE EMPLEADOS. En principio basta mostrar una consulta simple, incluyendo apenas el Cdigo del cargo, conforme a la figura 3.6.

cyta.com.ar/biblioteca//consultas.htm

8/19

12-May-11

Manual de Access - Consultas

cyta.com.ar/biblioteca//consultas.htm

9/19

12-May-11

Manual de Access - Consultas

FIGURA 3.6 Consultas sin y con valores exclusivos Como se observa hay repeticin de valores, pues todos los registros fueron seleccionados y apenas el campo Cdigo del cargo es presentado. Para listar sin repeticin se debe indicar que la seleccin debe omitir valores repetidos. Para ello se debe accionar en la pantalla de proyecto (modo Vista diseo) el men Ver opcin Propiedades o picar en el botn correspondiente. En la ventana de dilogo que aparece enseguida, activar la opcin Valores nicos.

3.9 Consultas con mltiples tablas. Es comn que los datos para una consulta se localicen en diversas tablas. Por ejemplo, la tabla PADRN DE EMPLEADOS hace referencia al Cdigo de cargo del funcionario, pero no especifica su salario, pues en la empresa ejemplo, el salario es funcin apenas del cargo.
cyta.com.ar/biblioteca//consultas.htm 10/19

12-May-11

Manual de Access especifica su salario, pues en la empresa ejemplo, el Consultas funcin apenas del cargo. salario es De esta forma, el salario correspondiente a cada cargo (Salario del cargo)consta solamente en la tabla PADRN DE CARGOS Y SALARIOS.

Si deseamos hacer una consulta que presente el Nombre del empleado y su Salario (Salario del cargo), ser necesario la referencia a las dos tablas. Adems de eso, es necesario informarle al sistema cmo las informaciones se ligan entre las tablas, en este caso, la relacin es a travs del Cdigo del cargo que consta en las dos tabla. Esa relacin es establecida en el modo diseo de la consulta despus de haber adicionado las dos tablas en la parte superior. Para hacer la relacin, basta picar sobre la lnea Cdigo del cargo en la tabla PADRN DE EMPLEADOS y arrastrar hasta que el icono quede sobre la lnea Cdigo del cargo en la tabla PADRN DE CARGOS Y SALARIOS. Si los campos comprendidos poseen el mismo nombre en las dos tablas entonces el Access intentar establecer la relacin automticamente. De la misma forma, en el caso en que ya hayan sido establecidas las relaciones entre las dos tablas en la ventana relaciones, entonces al adicionar las tablas en la ventana de proyecto de consultas automticamente aparecer la lnea de relacin entre los campos relacionados. Finalmente especificamos en la planilla QBE cuales son los campos a incluir en la consulta.
El Nom bre del empleado El Salario del cargo El descuento del 8% sobre el salario.

El ltimo campo es un campo computado cuya descripcin se inicia con la palabra descuento seguida de dos puntos. Esta ser la leyenda de la columna. El clculo efectuado envuelve la siguiente expresin. Cmoneda(IIf(Esnulo([salario del cargo]);0;[salario del cargo]*0,08)) Esta frmula envuelve varias funciones internas del sistema. Inicialmente se debe observar qu campos son los comprendidos en las expresiones; pues precisan estar entre corchetes, por esta razn se debe escribir [salario del cargo]. La funcin IIf es una funcin del tipo IIf(x;y,z) donde x es un test e y y z son los resultados que la funcin provee. Si el test da verdadero, entonces devuelve el resultado y, si el test da falso, entonces devuelve z. En nuestro caso, es necesario testear el campo salario del cargo pues podemos tener funcionarios sin cargo. De esta forma, es hecho un test para verificar si el campo tiene valor nulo. Observar que al digitar IIf, el nombre de la funcin es automticamente substituido por el nombre SiInm. Observar tambin que el hecho de que el salario no exista es que est siendo testeado por la funcin Esnulo y no que el valor del salario valga cero. Si no existiera el salario entonces devuelve cero como descuento. Si el salario existe entonces l es empleado para calcular 8% sobre l. Tanto un resultado como el otro acaban siendo
cyta.com.ar/biblioteca//consultas.htm 11/19

12-May-11

Manual de Access - Consultas

alimentados en al funcin Cmoneda que convierte ese resultado en formato interno para formato moneda y que es finalmente presentado en la hoja de datos. La frmula para el clculo de los descuentos fue digitada directamente en la columna QBE por lo tanto, podra haber sido construida con el auxilio del botn Generar que acciona el Generador de expresiones.

cyta.com.ar/biblioteca//consultas.htm

12/19

12-May-11

Manual de Access - Consultas

FIGURA 3.7 Consulta comprendiendo varia tablas

FIGURA 3.8 Hoja de datos de consulta comprendiendo varias tablas. 3.10. Totalizaciones. Es posible obtener totales en consultas. Podemos contar el nmero de ocurrencias de registros, obtener sumas, promedio, mnimos, mximos, etc. Para obtener totales es necesario incrementar una lnea Total en la planilla QBE lo que es hecho por el botn sumatoria ? en la barra de herramientas o men Ver opcin Totales. En la lnea Total para cada campo de la consulta deber ser especificado el tipo de totalizacin deseada. Por ejemplo, si el campo sirve apenas para contar registros, debemos elegir la opcin Contar. Si el campo tuviera que sumar, se selecciona Suma. Por otro lado, siempre habr campos que van a controlar el argumento de los registros, por ejemplo, si deseamos totales por departamentos, en nuestro caso para el del Nombre del departamento, especificaremos Agrupar por. Para obtener totales de subagrupamientos basta incluir en la secuencia correcta a los campos que dan origen a los grupos y subgrupos indicando el orden de clasificacin ms conveniente. El ejemplo de la figura 3.9 muestra la obtencin del total de Empleados por cargo dentro de cada departamento. Para cada entrada en esta consulta tambin es presentada la suma de los salarios.

cyta.com.ar/biblioteca//consultas.htm

13/19

12-May-11

Manual de Access - Consultas

FIGURA 3.9 Consulta incluyendo totales.

En la figura 3.10 de la hoja de datos se observa que la columna con el total de los salarios posee leyenda y est en formato moneda. Estas caractersticas fueron definidas seleccionando la columna salario del cargo en la ventana de diseo de la consulta y accionando el botn propiedades en la barra de herramientas. En la ventana Propiedades del campo fueron especificados: el formato moneda, lugares decimales automticas y titulo Suma (agregar en la tabla PADRN DE EMPLEADOS algunos registros con el mismo cargo en el mismo departamento).

FIGURA 3.10 Hoja de datos de consulta incluyendo varias tablas 3.11 Tablas cruzadas.
cyta.com.ar/biblioteca//consultas.htm 14/19

12-May-11

Manual de Access - Consultas

Las totalizaciones vistas anteriormente tambin pueden ser obtenidas a travs de consultas de referencia cruzada. La figura 3.11 muestra la construccin de una consulta de este tipo en la ventana Consulta de Tablas de Referencia Cruzada accionada por el botn correspondiente en la barra de herramientas. En este tipo de consulta se debe indicar cual es la informacin que caracteriza filas y columnas. Esto es indicado en la fila Referencias cruzada: Encabezado de fila, Encabezado de columna o valor. En el ejemplo, el campo nmero de empleado fue usado como valor para indicar la cuenta de los empleados del departamento y cargo. Adems de eso, es necesario indicar en la lnea total cmo cada campo debe ser computado. La sigla del departamento y el cdigo del cargo son campos de agrupamiento y el nmero de empleado indica simplemente un contador.

FIGURA 3.11 Estructura de la consulta de Referencia Cruzada

FIGURA 3.12 Hoja de Datos de la consulta de Referencia Cruzada Cuando se crea una nueva consulta de referencia cruzada por primera ves podra ser conveniente, para una mejor comprensin del procedimiento de construccin de este tipo de consulta, la utilizacin del asistente para consultas de referencias cruzadas.
cyta.com.ar/biblioteca//consultas.htm

3.12 - Propiedades de la Asociacin.

15/19

12-May-11

3.12 - Propiedades de la Asociacin. Cuando se construye una relacin entre dos tablas en una consulta es necesario especificar cual es el tipo de asociacin deseada. Esta cuestin puede ser observada en la consulta que relaciona para cada departamento (PADRN DE DEPARTAMENTO) el nombre de su gerente (PADRN DE EMPLEADO). La figura 3.13 muestra la estructura de esa consulta que envuelve dos tablas y una asociacin entre el Nmero de gerente y el Nmero de empleado (fue quitada la relacin, general, entre siglas del departamento). Vale la pena destacar que los dominios de los ambos campos Nmero de gerente y Nmero de empleado son iguales.

Manual de Access - Consultas

FIGURA 3.13 Consulta para campos asociados iguales. Al picar sobre la lnea de asociacin aparece la ventana Propiedades de Asociacin, conforme a la figura 3.14.

FIGURA 3.14 Ventana para definir el tipo de asociacin. En esa ventana est activa la primera opcin, lo que indica que en la hoja de datos de la
cyta.com.ar/biblioteca//consultas.htm 16/19

12-May-11

En esa ventana est activa la primera opcin, lo que indica que en la hoja de datos de la consulta solo irn a aparecer las informaciones de campos de las dos tablas para registros donde el nmero del gerente y el nmero del empleado fuesen iguales. La hoja de datos correspondiente aparece en la figura 3.15.

Manual de Access - Consultas

FIGURA 3.15 Hoja de datos para asociacin tipo 1 Por otro lado, si deseamos que aparezcan todos los departamentos igualmente aquellos que no poseen gerente o cuyo nmero de gente por alguna razn no ocurra en el PADRN DE EMPLEADOS, entonces debemos activar la opcin que incluye todos los registros del PADRN DE DEPARTAMENTOS. Observar que en este caso la lnea de asociacin se transforma en un vector que va del PADRN DE DEPARTAMENTOS al PADRN DE EMPLEADOS. La hoja de datos correspondiente aparece en al figura 3.16.

FIGURA 3.16 HOJA de datos para la asociacin tipo 2. Finalmente es posible relacionar todos los empleados del PADRN DE EMPLEADOS acompaados de su eventual registro asociado en el PADRN DE DEPARTAMENTOS (en el caso que sean gerentes). En este caso es necesario elegir la tercera opcin en la ventana Propiedades de Asociacin. Observar que en esta caso la lnea de asociacin se transforma en un vector que va del PADRN DE EMPLEADOS para el PADRN DE DEPARTAMENTOS. cyta.com.ar/biblioteca//consultas.htm La hoja de datos correspondiente aparece en la figura 3.17.

17/19

12-May-11

Manual de Access - Consultas

DEPARTAMENTOS. La hoja de datos correspondiente aparece en la figura 3.17.

FIGURA 3.17 Hoja de datos para la asociacin tipo 3 3.13 Consultas con parmetros. Podemos construir consultas cuyos criterios de seleccin pueden ser provistos cuando la consulta es ejecutada. Por ejemplo, podemos pedir al usuario que provea la Sigla del departamento de los empleados que desea listar en la pantalla. Para esto construimos una consulta normal de seleccin, por ejemplo, a partir de la tabla PADRN DE EMPLEADOS y en la lnea Criterio del campo Sigla del departamento especificamos un mensaje entre corchetes: [Informar sigla del departamento al listar]. Este mensaje es presentado a travs de una ventana de informacin de parmetro donde el usuario debe digitar la sigla deseada. Solo los registros con esta sigla sern listados. La figura 3.18 muestra la estructura y la ventana de solicitud del parmetro.

cyta.com.ar/biblioteca//consultas.htm

18/19

12-May-11

Manual de Access - Consultas

FIGURA 3.18 Consulta con parmetro


<< Relaciones :: Tabla de Contenidos :: Consultas de accin>>

cyta.com.ar/biblioteca//consultas.htm

19/19

You might also like