Tema5 consultas avz

15

Transcript of Tema5 consultas avz

Índice

CONSULTAS .......................................................................................................................................... 3

1. TIPOS DE CONSULTAS ..................................................................................................................... 3 2. CREAR CONSULTA DE SELECCIÓN DESDE LA VISTA DISEÑO ................................................................ 3

2.1. Tipos de combinación entre las tablas en una consulta ....................................................... 4 2.2. Criterios y fila Mostrar ........................................................................................................... 7 2.3. Ver el resultado de una consulta ........................................................................................... 8 2.4. Aplicar Totales ....................................................................................................................... 8 2.5. Utilizar parámetros .............................................................................................................. 10 2.6. Generador de expresiones .................................................................................................. 11 2.7. Funciones de uso frecuente ................................................................................................ 14

Tema 5. Consultas de selección

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

En este tema aprenderá a trabajar con consultas de selección de detalle y de totales, de una y

varias tablas, donde se emplearán diferentes tipos de combinación. Además se muestran

algunas funciones útiles para obtener campo calculados o para especificar criterios más

complejos.

1. Tipos de consultas

Existen dos grandes grupos de consultas:

Consultas de selección

Muestran información (registros) de una o varias tablas. Cuando se abren muestran una hoja de

datos con el resultado de la información solicitada y generalmente permiten realizar cambios

desde esa ventana. Cambios que se hacen al tiempo en las tablas de origen.

Consultas de acción

Llevan a cabo tareas sobre una o varias tablas. Tareas como actualizar el contenido de uno o

varios campos, eliminar registros, copiar registros de una tabla a otra, crear tabla. Cuando se

abren ejecutan la tarea encomendada y no muestran la hoja de datos

2. Crear consulta de selección desde la vista diseño

Antes de crear una consulta compruebe que ha cerrado la ventana de la tabla o tablas con las

que trabajará desde la consulta.

Utilice el comando Diseño de consulta de la ficha Crear. En el cuadro de diálogo seleccione la

tabla o tablas de las que tomará la información.

Una vez seleccionadas pulse el botón Agregar y cierre el cuadro de diálogo. Le mostrará la vista

de diseño de la consulta.

El aspecto que presentará si seleccionó varias tablas puede ser el siguiente:

Tema 5. Consultas de selección

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

La línea de combinación entre las tablas se muestra cuando hay una relación definida entre esas

tablas. Si no existiera esa definición en la ventana de relaciones, deberá combinarlas, al menos

en la consulta, arrastrando desde el campo común de una tabla al campo común de la otra tabla.

Si no establece ninguna conexión entre las tablas el resultado es el producto cartesiano de los

registros de ambas tablas.

2.1. Tipos de combinación entre las tablas en una consulta

Dependiendo del tipo de combinación que establezca entre las tablas, el resultado de la consulta

puede ser diferente.

Por defecto, el tipo de combinación que establece es el que conecta los registros en los que el

campo común es igual, lo que se conoce como registros coincidentes. (1)

Para cambiar el tipo de combinación haga doble clic sobre la línea de combinación que aparece

entre las dos tablas y mostrará el cuadro de diálogo Propiedades de la combinación.

Si en la cuadrícula se bajan todos los campos de ambas tablas se obtienen estos resultados en

cada caso:

Tema 5. Consultas de selección

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

(1) Cuando se muestran los coincidentes, que es la opción por defecto:

Combina los registros de ambas tablas que tienen el NIF=COD_ALUMNO, resultando lo

siguiente

(2) Cuando se muestran todos los registros de ALUMNOS y de ASITENTES sólo los

coincidentes:

Tema 5. Consultas de selección

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

Muestra todos los registros de ALUMNOS, combinando con ASISTENTES los que tienen el

NIF=COD_ALUMNO. Los registros de ALUMNOS cuyo NIF no coincide con ningún

COD_ALUMNO de ASISTENTES, lo muestra sin combinar.

(3) Cuando se muestran todos los registros de ASITENTES y de ALUMNOS sólo los

coincidentes:

Tema 5. Consultas de selección

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

Muestra todos los registros de ASISTENTES combinando con los registros de ALUMNOS que

tienen el NIF=COD_ALUMNO. Los registros de ASISTENTES cuyo COD_ALUMNO no coincide

con ningún NIF de ALUMNO, lo muestra sin combinar.

2.2. Criterios y fila Mostrar

Desde la vista diseño de la consulta, haga clic en la fila Criterios del campo para el cual desea

establecer criterios y escriba la expresión directamente o mediante el Generador de expresiones.

Para incluir otro criterio, haga clic en una celda de:

La misma fila Criterios, de otra columna - campo – para aplicar ambos criterios a la vez

(Y).

La fila de O que se encuentra por debajo de Criterios, para que se aplique un criterio o el

otro (O).

Para eliminar una fila de criterios, seleccione la fila y presione la tecla SUPR.

Si sólo desea aplicar el criterio sobre un campo, si mostrar la información de ese campo,

desmarque la casilla Mostrar.

Tema 5. Consultas de selección

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

2.3. Ver el resultado de una consulta

Para ver el resultado de la consulta realizada, sin cerrar ésta utilice el comando Ver hoja de

datos de la ficha Diseño o de la ficha Inicio, o bien el botón de Vista hoja de datos de la barra

de estado

Desde esta vista Hoja de datos puede pasar a la vista diseño de la consulta para realizar

modificaciones. Utilice el comando Ver de la ficha Inicio o el botón de la Vista Diseño de la barra

de estado

2.4. Aplicar Totales

Una consulta de totales muestra información resumen de una o varias tablas. Para crear este

tipo de consulta comience como si de una consulta de selección normal (de detalle) se tratara y

una vez en la vista diseño active Totales en la ficha Diseño.

El resultado es que en la cuadrícula inferior mostrará una fila más, la fila Total

Tema 5. Consultas de selección

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

La fila Total desaparece si vuelve a actuar sobre el botón que lo activó.

En una consulta de totales bajará a la cuadrícula los campos de la tabla en los que desee

realizar un cálculo, con la información que contienen. Es por eso que nunca se puede emplear el

asterisco (*) en este tipo de consultas.

Como ejemplo, crearemos una consulta de la tabla CURSOS, que muestre el número de cursos

(nº de registros) la duración media de los cursos, y el total de horas.

Baje los campos siguientes: CURSO y DURACIÓN, este último dos veces:

1. Lleve el cursor a la columna de CURSO a la fila Total y seleccione en el desplegable Cuenta.

2. Lleve el cursor a la primera columna de DURACIÓN a la fila Total y seleccione en el

desplegable Promedio.

3. Lleve el cursor a la segunda columna de DURACIÓN a la fila Total y seleccione en el

desplegable Suma.

Para ver el resultado pase a la vista hoja de datos desde el botón Ver de la ficha Diseño

A la hora de utilizar criterios sobre un campo, debe emplear la cláusula Dónde en la fila Total.

Tema 5. Consultas de selección

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

2.5. Utilizar parámetros

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.

Solicita el parámetro cuando la ejecuta pero no cuando accede a la vista diseño de la consulta.

No es obligatorio definir previamente el parámetro, pero si desea ajustar el tamaño y tipo de

datos del mismo, puede realizar su definición.

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 almacenará. 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

Puede emplear el parámetro en la fila de criterios. 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.

Tema 5. Consultas de selección

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

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.

Para eliminar un parámetro basta lo elimine de las expresiones de la fila Criterios y de la fila

Campo, si no había realizado una definición del parámetro en la ventana Parámetros.

Si había 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

2.6. 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.

Un campo calculado se crea en la fila Campo, a continuación de la última columna empleada.

Se escribirá el nombre del campo calculado, que no debe coincidir con un campo de la tabla,

seguido de dos puntos y de la expresión de cálculo correspondiente.

Si no le asigna un nombre, escribiendo únicamente la expresión de cálculo, Access le asigna un

nombre automático de la forma Expr1, Expr2, …

Tema 5. Consultas de selección

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

Para el ejemplo, vamos a crear 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 menú

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.

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

Tema 5. Consultas de selección

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

Pulse Aceptar para terminar. Luego en la cuadrícula valide con INTRO la expresión obtenida

Al comenzar con el generador de expresiones no ha utilizado nombre de campo y asigna un

nombre a la expresión Expr1. Puede cambiarlo por el nombre de campo que desee (COSTE

CURSO).

Los nombres de campo y de parámetro siempre se escriben entre corchetes

Tema 5. Consultas de selección

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

14

2.7. Funciones de uso frecuente

Las funciones se utilizarán en la obtención de campos calculados y otras veces para establecer

criterios en las consultas.

Funciones de texto

Izq(Cadena de texto;n)

Devuelve los n primeros caracteres por la izquierda de la cadena de texto dada.

IZQ(“PRUEBA”;2) su resultado es: PR

Der(Cadena de texto;n)

Devuelve los n últimos caracteres por la derecha de la cadena de texto dada.

DER(“PRUEBA”;2) su resultado es: BA

Medio(Cadena de texto;inicio;n)

Devuelve los n caracteres de la cadena de texto dada empezando a contar desde la posición de

inicio.

MEDIO(“PRUEBA”;2;3) su resultado es: RUE

Mayús(Cadena de texto)

Devuelve la cadena de texto dada en mayúsculas.

MAYÚS(“prueba”) su resultado es: PRUEBA

Minús(Cadena de texto)

Devuelve la cadena de texto dada en minúsculas.

MINÚS(“PRUEBA”) su resultado es: prueba

Recortar(Cadena de texto)

Devuelve la cadena de texto dada sin espacios a la izquierda y sin espacios a la derecha.

RECORTAR(“ prueba ”) su resultado es: prueba

Longitud(Cadena de texto)

Devuelve el número de caracteres que forman la cadena de texto dada.

LONGITUD(“prueba”) su resultado es: 6

Espacio(número)

Devuelve el número de espacios indicado.

ESPACIO(5) su resultado es: 5 ESPACIOS.

Format(expresión;formato)

Devuelve la expresión formateada de acuerdo a las instrucciones contenidas en el código de

formato dado.

FORMAT(54 "000") su resultado es: 054.

FORMAT("SMTT", "<") su resultado es: smtt

FORMAT("smtt", ">") su resultado es: SMTT

Tema 5. Consultas de selección

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

15

FORMAT(#10/02/97#;"mmmm") su resultado es: febrero

Funciones de Fecha y hora

Año(expresión_de_fecha)

Devuelve un valor numérico que representa un valor numérico que represente el año con 4

dígitos de la fecha dada.

AÑO(#14/04/1984#) su resultado es: 1984.

Día(expresión_de_fecha)

Devuelve un número entre 1 y 31 correspondiente al día del mes de la fecha dada.

DÍA(#14/04/1984#) su resultado es: 14.

Mes(expresión_de_fecha)

Devuelve un número entre 1 y 12 correspondiente al mes del año.

MES(#14/04/1984#) su resultado es: 4.

Ejemplos en una consulta

Mostrar los datos de los alumnos que realizan cursos que comienzan en el mes de abril

Obtener la letra del NIF de los alumnos