tema6 consultas ii
DESCRIPTION
Consultas de seleccion con parametros y campos calculados en Access 2007TRANSCRIPT
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
2
Índice
CONSULTAS DE SELECCIÓN II ........................................................................................................... 3
1. CONSULTAS CON GRUPOS ............................................................................................................... 3 2. AÑADIR CÁLCULOS A LOS GRUPOS ................................................................................................... 4 3. CONSULTAS CON CRITERIOS VARIABLES ........................................................................................... 6
3.1. Definir parámetros ................................................................................................................. 6 3.2. Utilizar parámetros como criterios ......................................................................................... 6 3.3. Ejecutar consulta con parámetros ......................................................................................... 7
4. CONSULTAS CON CAMPOS CALCULADOS ........................................................................................... 9 4.1. Generador de expresiones .................................................................................................. 10 4.2. Consultas con campos calculados y parámetros ................................................................ 12
5. ELIMINAR PARÁMETROS ................................................................................................................. 13
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
3
Consultas de selección II
En este tema aprenderá a trabajar con consultas de selección que le permitirán agrupar los y
registros por alguno de sus campos y realizar cálculos para cada uno de esos grupos. También
se describe el modo de trabajar con parámetros y cómo incluir campos calculados.
1. Consultas con grupos
Cuando en una consulta agrupa por un campo, muestra en ese campo los valores diferentes que
encuentra sin repetir ninguno.Cada uno de esos valores diferentes es un grupo. Además puede
incluir cálculos para cada uno de los grupos.
En la vista diseño de una consulta active Totales. Baje el campo por el que desee crear grupos
a la cuadrícula y en la fila Total seleccione Agrupar por
Si a partir de esta tabla de CURSOS se desea conocer las diferentes aulas en las que se
imparten cursos
Lo más rápido es una consulta en la que muestre y agrupe por el campo AULA
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
4
2. Añadir cálculos a los grupos
Cuando en una consulta agrupa por un campo, de forma interna está seleccionando los registros
de la tabla para cada grupo, es por ello que a cada grupo se le pueden añadir cálculos aplicados
sobre algun otro campo. Esos cálculos los realiza con los valores de los registros de cada grupo.
En una consulta con grupos no se visualiza el detalle de cada registro y no se pueden modificar
los datos en la vista hoja de datos del resultado que muestra.
Siguiendo con el ejemplo anterior, de hacer grupos por aulas, ha creado internamente los
siguientes grupos:
En la consulta por grupos puede solicitar un cálculo para contar los cursos en cada aula, otro
que calcule la duración media de los cursos de cad aula, otro que calcule las horas totales que
se imparten en cada aula.
El modo de hacerlo es en la vista diseño de la consulta: primero baja a la cuadrícula el campo
por el que realiza los grupos y elige Agrupar por en la fila Total.
Después baja cada uno de los campos en los que va a realizar cálculos y en la fila Total
selecciona el cálculo
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
5
El resultado de esta consulta es el siguiente:
No muestra el detalle de los registros de cada grupo y no se pueden modificar los datos desde
la vista hoja de datos
Cuando crea consultas de grupos, puede agrupar por más de un campo. En el ejemplo siguiente
se diseña una consulta que muestre el número de cursos. Que da cada monitor en un aula
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
6
3. Consultas con criterios variables
Un parámetro es una variable de memoria que recoge un valor que da el usuario. Si se emplea
en la fila de criterios de un campo que tenga el mismo tipo de datos y con cualquier operador de
comparación, cuando la ejecuta, le pide al usuario que dé valor a ese parámetro, estableciendo
ese valor dado para el criterio.
En definitiva, una consulta con un parámetro en la fila criterios equivale a tener múltiples
consultas, cada una de ellas con el valor que asigna al parámetro.
El parámetro le solicita cuando la ejecuta pero no cuando accede a la vista diseño de la consulta.
3.1. Definir parámetros
Para definir parámetros en una consulta, debe hacerlo en la vista diseño de la consulta y
empleando el comando Parámetros de la ficha Diseño
Le mostrará una ventana donde debe indicar el nombre del parámetro que va a definir y el tipo
de datos que alamcenará. Pulse Aceptar para terminar
Un parámetro no puede tener el mismo nombre que un campo de la tabla, aunque sí puede
emplear un nombre parecido
3.2. Utilizar parámetros como criterios
Se emplean en la fila criterios, debajo del campo correspondiente. Donde utilice el parámetro
escriba el nombre del parámetro entre corchetes. Antes de emplear el nombre de un parámetro
utilizará un operador de comparación (excepto para el igual = , que puede omitirlo).
Puede emplear un parámetro sin haberlo definido previamente, pues si en la cuadrícula emplea
un nombre que no asocia a ningún campo, Access entenderá que es un parámetro.
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
7
Si en la cuadrícula emplea este parámetro para el campo AULA del modo siguiente
Cuando ejecute la consulta solicitará el valor del parámetro ‘Que aula’ si su respuesta es una de
las aulas que tiene (AULA 1, AULA 2 o AULA 3) será como si hubiese empleado como criterio el
nombre de una de esas aulas. En lugar de tres consultas tiene una sola.
3.3. Ejecutar consulta con parámetros
Abra la consulta desde el explorador si ya estaba gurdada y cerrada o si estaba en la vsta diseño
puede cambiar a la vista hoja de datos.
Mostrará una ventana diferente para cada parámetro que haya definido, solicitando un valor para
ese parámetro:
El resultado en este ejemplo será el siguiente
Si cierra la consulta y vuelve a ejecutarla, volverá a solicitar el valor del parámetro
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
8
Para que quede claro que es posible emplear cualquier operador de comparación con un
parámetro realizaremos un ejemplo para obtener una consulta que pregunte por la duración
mínima de los cursos y dependiendo del valor que demos nos muestre un resultado diferente.
Creaemos una consulta nueva de la tabla CURSOS y definiremos el parámetro Duracion minima
de tipo numérico (entero largo) como el campo DURACION
Para que muestre toda la información de los cursos que tienen al menos esta duración, en la
cuadrícula utilizará lo siguiente:
Guarde la consulta con el nombre CURSOS por duración minima. Luego ejecute la consulta
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
9
4. Consultas con campos calculados
En una consulta de selección, además de mostrar campos de la tabla puede definir campos que
sólo se visualicen cuando ejecuta la consulta y que sean el resultado de operar con campos de
la tabla.
Para definir un campo calculado debe encontrarse en la vista diseño de la consulta. En la fila
Campo, en la primera columna libre, escribirá el nombre del campo calculado y separado por dos
puntos la expresión del cálculo correspondiente
Nombre de campo: expresión de cálculo
Realizaremos un ejemplo donde estableceremos un coste de curso, de modo que cada hora sea
a 70 €
Cuando muestre la hoja de datos de esta consulta verá un nuevo campo cuyo contenido no
podrá modificar desde la hoja de datos por tratarse de un campo calculado.
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
10
En la expresión de cálculo puede utilizar los operadores aritméticos que conoce:
+ Suma
- Resta
* Multiplica
/ Divide
^ Eleva a un exponente
Si emplea nombre de campo, éstos irán entre corchetes. Podrá emplear el nombre de otro
campo calculado y también irá entre corchetes.
Como se explicó en el punto anterior, debe ser cuidadoso al escribir, pues si el nombre de un
campo no lo escribe de forma correcta, entenderá que se trata de un parámetro y solicitará su
valor al ejecutar la consulta.
4.1. Generador de expresiones
Para ayudarse en las expresiones de cálculo puede utilizar el generador de expresiones de
Access, ya sea en la creación de un campo calculado o en la escritura de un criterio más
complejo.
Para el ejemplo, vamos acrear el campo calculado de COSTE CURSO empleando el generador.
Pulse el botón derecho del ratón donde precise de esa expresión calculada y en el menu
contextual seleccione Generar
Muestra un cuadro de diálogo que en la parte inferior tiene tres columnas. La primera es de
objetos, funciones, operadores, … Si ese elemento tiene un +, haga doble clic para mostrar su
contenido.
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
11
Vamos a definir la misma expresión del campo calculado anterior
Una vez que ve el elemento que le interesa haga clic en él. Así le mostrará en la segunda
columna los elementos de este objeto, en este caso, son los campos de la tabla CURSOS.
Para seleccionar un campo haga clic en el nombre del campo en la segunda columna
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
12
Pulse Aceptar para terminar. Luego en la cuadrícula valide con INTRO la expresíón obtenida
Al comenzar con el generador de expresiones no ha utilizado nombre de campo y asiga un
nombre a la expresión Expr1. Puede cambiarlo por el nombre de campo que desee (COSTE
CURSO).
4.2. Consultas con campos calculados y parámetros
Es posible incluir ambos elementos en una consulta. Los parámetros no siempre se emplean en
la fila de Criterios, también pueden emplearse en la fila Campo, formando parte de la expresión
que define un campo calculado.
Siguiendo con el ejemplo anterior, si se desea incluir un campo calculado para obtener el coste
de cada curso, y este precio, puede cambiar de un tiempo a otro, puede utilizar un parámetro
para el precio/hora.
Tema6. Consultas II
C/ Miguel de Unamuno, 1_47008_Valladolid
Tel. 983249455 / 625569162_Fax 983243547
[email protected]_www.ticsyformacion.com
Plaza Iturrilun nº5 bajo_20800 Zarautz_Gipuzkoa
Tel. 943830230_Fax 943830233
[email protected]_www.lombokdesign.com
13
El parámetro empleado es PRECIO_HORA. Cuando ejecute la consulta pedirá este valor,
dependiendo de que devuelva 50, 70, 30 … el coste de los cursos será diferente
5. Eliminar parámetros
Si en una consulta elimina de las expresiones de la fila Criterios y de la fila Campo los
parámetros que empleba sustituyendolos por valores concretos o campos de la tabla puede ser
suficiente si no había realizado una definición del parámetro en la ventana Parámetros.
Si habia realizado esa definición, además de eliminarles de esas expresiones debe eliminarlos
de la ventana Parámetros. Muestre esa ventana utilizando el comando Parámetros de la ficha
Diseño en la vista Diseño de la consulta