Está en la página 1de 11

Tipos de consultas (MDB)

Se utilizan consultas para ver, modificar y analizar datos de formas diferentes. Tambin pueden utilizarse como el origen de registros para formularios, informes y pginas de acceso a datos (pgina de acceso a datos: pgina Web, publicada desde Access, ue tiene una cone!i"n a una base de datos. #n una pgina de acceso a datos, puede ver, agregar, editar y manipular los datos almacenados en la base de datos. $na pgina puede incluir tambin datos de otros or%genes de datos, como #!cel.&. #!isten varios tipos de consultas en 'icrosoft Access. (onsultas de selecci"n $na consulta de selecci"n es el tipo de consulta ms )abitual. #ste tipo de consulta obtiene los datos de una o ms tablas y muestra los resultados en una )o*a de datos en la ue puede actualizar los registros (con algunas restricciones&. Tambin puede utilizar una consulta de selecci"n para agrupar los registros y calcular sumas, cuentas, promedios y otros tipos de totales. (onsultas de parmetros $na consulta de parmetros es una consulta ue, cuando se e*ecuta, muestra un cuadro de dilogo propio ue solicita informaci"n, por e*emplo, criterios (criterios: condiciones ue se especifican para limitar los registros ue se incluyen en el con*unto de resultados de una consulta o un filtro.& para recuperar registros o un valor ue desea insertar en un campo. +uede dise,ar la consulta para ue solicite ms de un dato- por e*emplo, puede dise,arla para ue solicite dos fec)as. Access puede entonces recuperar todos los registros ue se encuentren entre esas dos fec)as. .as consultas de parmetros tambin son /tiles cuando se emplean como base para formularios, informes y pginas de acceso a datos. +or e*emplo, puede crear un informe de ingresos mensuales basado en una consulta de parmetros. Al imprimir el informe, Access muestra un cuadro de dilogo ue solicita el mes para el ue se desea obtener el informe. (uando se especifica un mes, Access imprime el informe correspondiente. (onsultas de tabla de referencias cruzadas .as consultas de referencias cruzadas se utilizan para calcular y reestructurar datos de manera ue su anlisis sea ms sencillo. .as consultas de referencias cruzadas calculan una suma, una media, un recuento u otro tipo de totales de datos, y se agrupan en dos tipos de informaci"n : uno )acia aba*o, en el lado iz uierdo de la )o*a de datos, y otro a lo largo de la parte superior. (onsultas de acci"n

$na consulta de acci"n es una consulta ue realiza cambios o desplazamientos de muc)os registros en una sola operaci"n. 0ay cuatro tipos de consultas de acci"n:

Consulta de eliminacin #limina un grupo de registros de una o ms tablas. +or e*emplo, puede utilizar una consulta de eliminaci"n para uitar productos ue ya no se fabrican o de los ue no )ay pedidos. (on las consultas de eliminaci"n, siempre se eliminan registros enteros, no s"lo campos seleccionados dentro de los registros. Consulta de actualizacin 1ealiza cambios globales en un grupo de registros de una o ms tablas. +or e*emplo, puede aumentar los precios un 23 por ciento para todos los productos lcteos o bien puede aumentar los sueldos un 4 por ciento al personal de una determinada categor%a. (on una consulta de actualizaci"n, puede cambiar los datos de las tablas e!istentes. Consulta de datos anexados Agrega un grupo de registros de una o ms tablas al final de una o ms tablas. +or e*emplo, supongamos ue consigue nuevos clientes y una base de datos ue contiene una tabla con informaci"n acerca de estos clientes. +ara evitar tener ue escribir toda esta informaci"n en la base de datos, desea ane!arla a la tabla (lientes. Consulta de creacin de tabla (rea una tabla nueva a partir de la totalidad o una parte de los datos de una o ms tablas. .as consultas de creaci"n de tabla son /tiles para crear una tabla ue se desee e!portar a otra base de datos de 'icrosoft Access (base de datos de 'icrosoft Access: colecci"n de datos y ob*etos (como tablas, consultas o formularios&, ue est relacionada con un tema o prop"sito concreto. #l motor de base de datos 'icrosoft 5et administra los datos.& o una tabla )ist"rica ue contenga registros antiguos. (onsultas S6.

$na consulta S6. es una consulta creada con una instrucci"n S6. (cadena o instrucci"n de S6.: e!presi"n ue define un comando de S6., como S#.#(T, $+7AT# o 7#.#T#, e incluye clusulas como W0#1# y 817#1 9:. .as instrucciones o cadenas de S6. se utilizan en consultas y en funciones de agregado.&. +uede utilizar el .engua*e de consulta estructurado (S6. o Structured 6uery .anguage& para consultar, actualizar y administrar bases de datos relacionales, como Access. (uando se crea una consulta en la vista 7ise,o (vista 7ise,o: ventana ue muestra el dise,o de estos ob*etos de base de datos: tablas, consultas, formularios, informes, macros y pginas de acceso a datos. #n la vista 7ise,o, puede crear ob*etos de base de datos nuevos y modificar el dise,o de otros e!istentes.& de la consulta, Access construye en segundo plano las instrucciones S6. e uivalentes. 7e )ec)o, la mayor%a de las propiedades de consulta de la )o*a de propiedades de la vista 7ise,o de la consulta tienen clusulas y opciones e uivalentes a las ue estn disponibles en la vista S6. (vista S6.: ventana ue muestra la instrucci"n S6. para la consulta activa o ue se utiliza para crear una consulta espec%fica de S6. (uni"n, paso a travs o definici"n de datos&. (uando se crea una consulta en la vista 7ise,o, Access construye el S6. e uivalente en la vista S6..&. Si lo desea, puede ver o editar la instrucci"n S6. en la

vista S6.. Sin embargo, despus de )acer cambios en una consulta en la vista S6., puede ue su aspecto no sea el ue ten%a en la vista 7ise,o. Algunas consultas S6., denominadas consultas espec%ficas de S6. (consulta espec%fica de S6.: consulta ue consta de una instrucci"n S6.. .as subconsultas y consultas de paso a travs, uni"n y definici"n de datos son consultas espec%ficas de S6..&, no se pueden crear en la cuadr%cula de dise,o (cuadr%cula de dise,o: cuadr%cula utilizada para dise,ar una consulta o un filtro en la vista 7ise,o de consulta o en la ventana ;iltro u orden avanzado. +ara las consultas, esta cuadr%cula se conoc%a antes como la cuadr%cula 69#.&. #n el caso de las consultas de paso a travs (consulta de paso a travs: una consulta espec%fica de S6. ue se utiliza para enviar comandos directamente a un servidor de base de datos 879(. .as consultas de paso a travs permiten traba*ar directamente con las tablas del servidor en lugar de )acer ue el motor de base de datos 'icrosoft 5et procese los datos.&, consultas de definici"n de datos (consulta de definici"n de datos: consulta espec%fica de S6. ue contiene instrucciones 77. (lengua*e de definici"n de datos&. #stas instrucciones permiten crear o alterar ob*etos de la base de datos.& y consultas de uni"n (consulta de uni"n: consulta ue utiliza el operador $<=8< para combinar los resultados de dos o ms consultas de selecci"n.&, debe crear las instrucciones S6. directamente en la vista S6.. #n el caso de las subconsultas (subconsulta: instrucci"n S6. S#.#(T ue est dentro de otra consulta de selecci"n o de acci"n.&, la instrucci"n S6. se escribe en la fila Campo o en la fila Criterios de la cuadr%cula de dise,o

Agrupar registros
Hasta ahora las consultas de resumen que hemos visto utilizan todas las filas de la tabla y producen una nica fila resultado. La opcin AgruparPor permite definir columnas de agrupacin. Una consulta de resumen sin columnas de agrupacin obtiene una nica fila resultado y los clculos se realizan sobre todos los registros del origen. uando se incluye una columna de agrupacin Access forma grupos con todos los registros que tienen el mismo valor en la columna de agrupacin y cada grupo as! formado genera una fila en el resultado de la consulta y adems todos los clculos definidos se realizan sobre los registros de cada grupo. "e esta forma se pueden obtener subtotales. #or e$emplo queremos saber cuntos alumnos tenemos en cada poblacin. %enemos que indicar que queremos contar los registros de la tabla Alumnado pero antes agrupndolos por el campo Poblacion. "e esta manera la funcin cuenta() la calcular sobre cada grupo de registros &los alumnos de la misma poblacin'. La consulta quedar!a as!(

Los campos de tipo memo u OLE no se pueden definir como columnas de agrupacin. )e pueden agrupar las filas por varias columnas* en este caso se agrupan los registros que contienen el mismo valor en cada una de las columnas de agrupacin. Todas las filas que tienen valor nulo en la columna de agrupacin* pasan a formar un nico grupo.

+ncluir e,presiones
La opcin E!presin permite poner en la fila "ampo# una e,presin en vez de un nombre de columna. -sta e,presin tiene ciertas limitaciones. )lo puede contener operandos que sean funciones de agregado &las funciones que acabamos de ver & suma( )* Promedio( )* DesvEst( )$ M%n( )* Ma!( )&&&' valores fi$os o nombres de columna que aparezcan con la opcin AgruparPor. -n una e,presin se pueden combinar varias funciones de agregado pero no se pueden anidar funciones de agregado* por e$emplo en una e,presin puedo poner Max(nhoras)Mn(nhoras) pero no Max(suma(nhoras)).

+ncluir criterios de bsqueda


La opcin Dnde permite poner un criterio de bsqueda que se aplicar a las filas del origen de la consulta antes de realizar los clculos. #or e$emplo queremos saber cuntos alumnos tenemos de .alencia* para ello tenemos que contar los registros de la tabla alumnado pero seleccionando previamente los de .alencia* esto se definir!a de la siguiente forma(

%ambi/n podemos incluir un criterio de bsqueda en una columna que no tenga la opcin Dnde* en este caso la condicin se aplicar' a las filas resultantes de la consulta. #ara la condicin de seleccin se pueden utilizar los mismos operadores de condicin que en una consulta normal* tambi/n se pueden escribir condiciones compuestas &unidas por los operadores O(* A)D* )OT'* e,iste una limitacin* en la fila "riterios( no se podr poner un nombre de columna si esta columna no es una columna de agrupacin.

0+%-0+1) -2 12)UL%A)
> 234 Devuelve todos los nmeros mayores que 234. Para buscar todos los nmeros menores que 234, use < 234. Devuelve todos los re !stros desde Daz "asta el #!nal del al#abeto. Devuelve las #ec"as com*rend!das entre el 2 de #ebrero de 2&&' y el ) de d!c!embre de 2&&' +,-./0123. .! la base de datos usa los caracteres comodn ,-./022, use com!llas s!m*les +43 en vez de s! nos de almo"ad!lla. Por e5em*lo6 $ntre 4&2.&2.2&&'4 ( 4&).)2.2&&'4. $ncuentra todos los re !stros en los que el conten!do e7acto del cam*o no es e7actamente ! ual a ",leman!a". $l cr!ter!o devolver8 re !stros que cont!enen caracteres adem8s de ",leman!a," como ",leman!a +euro3" o "$uro*a +,leman!a3". ;usca todos los re !stros, salvo los que em*!ezan *or 9. .! la base de datos usa los caracteres comodn ,-./022, use el s! no de *orcenta5e +%3 en vez del aster!sco +*3. ;usca todos los re !stros que no term!nen en t. .! la base de datos usa el 5ue o de caracteres comodn ,-./022, use el s! no de *orcenta5e en vez del aster!sco. $n una l!sta, busca todos los re !stros que conten an <anad8 o =e!no >n!do.

>= "Daz" $ntre %&2.&2.2&&'% ( %&).)2.2&&'%

.!n ",leman!a"

.!n "9:"

-o ":t"

$n+<anad8,=e!no >n!do3 <omo "?,0D@:"

$n un cam*o con el t!*o de datos 9e7to, busca todos los re !stros que em*!ecen *or las letras com*rend!das entre , y D. .! la base de datos usa el 5ue o de caracteres comodn ,-./022, use el s! no de *orcenta5e en vez del aster!sco. ;usca todos los re !stros que !ncluyan el ru*o de letras "ar". .! la base de datos usa el 5ue o de caracteres comodn ,-./022, use el s! no de *orcenta5e en vez del aster!sco. ;usca todos los re !stros que em*!ecen *or "<asa" y conten an una se unda cadena de C letras, cuyas cuatro *r!meras letras son "DeAe" y cuya lt!ma letra se desconoce +lo cual v!ene !nd!cado *or el s! no de !nterro ac!Dn3. .! la base de datos usa el 5ue o de caracteres comodn ,-./022, use el car8cter de subrayado + _3 en vez del s! no de !nterro ac!Dn. ;usca todos los re !stros del 2 de #ebrero de 2&&'. .! la base de datos usa el 5ue o de caracteres comodn ,-./022, !ncluya la #ec"a entre com!llas s!m*les en vez de usar s! nos de almo"ad!lla +#3. $5em*lo6 4&2.&2.2&&'4. Devuelve todas las #ec"as con una ant! Fedad de m8s de 3& das. Devuelve todos los re !stros que cont!enen la #ec"a actual. Devuelve todos los re !stros entre la #ec"a actual y tres meses a *art!r de la #ec"a actual.

<omo ":ar:"

<omo "<asa DeAeB"

%&2.&2.2&&'%

< Eec"a+3 0 3& Eec"a+3 $ntre Eec"a+3 ( , re Eec"a+"G", 3, Eec"a+33 $s -ulo -o es -ulo ""

Devuelve todos los re !stros que conten an un valor nulo +en blanco o s!n de#!n!r3. Devuelve todos los re !stros que cont!enen un valor. Devuelve todos los re !stros que cont!enen una cadena de lon !tud cero. Has cadenas de lon !tud cero se ut!l!zan cuando es necesar!o a re ar un valor a un cam*o obl! ator!o, *ero an no se conoce el valor. Por e5em*lo, un cam*o *uede requer!r un nmero de #a7, *ero *uede que al unos cl!entes no ten an #a7. $n ese caso, se !ncluye un *ar de com!llas dobles s!n es*ac!os entre ellas +""3 en lu ar de un nmero.

3. 4.

-n la ficha Dise*o* en el grupo (esultados* haga clic en E+ecutar. ompruebe que la consulta devuelve los registros que desee actualizar. )i desea agregar o quitar campos de la consulta* vuelva a la vista "ise5o y agregue los campos de acuerdo con lo

descrito en el anterior paso* o bien* seleccione los campos que desee quitar y presione )U#0+6+0 para quitarlos de la consulta. 7. #rosiga con el siguiente procedimiento* mediante el cual va a convertir la consulta de seleccin en una consulta de datos ane,ados

(8<S$.TAS S6. #< A((#SS 2.


Si usas esta consulta te tira todas las tablas unidas y podes saber de que tabla es cada registro. Supongamos que tenes 3 tablas (Tabla1,Tabla2 y Tabla3) con el campo Apellido: SE E!T Tabla1.Apellido, "Tabla1" AS Tabla #$%& Tabla1 '()%( SE E!T Tabla2.Apellido, "Tabla2" AS Tabla #$%& Tabla2 '()%( SE E!T Tabla3.Apellido, "Tabla3" AS Tabla #$%& Tabla3*

2. SELECT * FROM Empleados WHERE Edad > 25 AND Edad < 50; SELECT * FROM Empleados WHERE (Edad > 25 AND Edad < 50 OR S!eldo " #00; SELECT * FROM Empleados WHERE NOT Es$ado " %Sol$e&o%; SELECT * FROM Empleados WHERE (S!eldo > #00 AND S!eldo < 500 OR ('&o()*+)a " %Mad&)d% AND Es$ado " %Casado% ;

>.

3.4 El Operador In
#ste operador devuelve a uellos registros cuyo campo indicado coincide con alguno de los indicados en una lista. Su sinta!is es: expresin [Not] In(valor ! valor"! . . .#
SELECT * FROM 'ed)dos WHERE '&o()*+)a

,* (%Mad&)d%- %.a&+elo*a%- %Se()lla% ;

?.

3.$ %a cl&usula '(E)E


.a clusula '(E)E puede usarse para determinar u registros de las tablas enumeradas en la clusula *)O+ aparecern en los resultados de la instrucci"n ,E%EC-. 7espus de escribir esta clusula se deben especificar las condiciones e!puestas en los apartados >.2 y >.@. Si no se emplea esta clusula, la consulta devolver todas las filas de la tabla. '(E)E es opcional, pero cuando aparece debe ir a continuaci"n de *)O+.
SELECT Apell)dos- Sala&)o FROM Empleados WHERE Sala&)o > 2#000; SELECT ,d/'&od!+$o- E0)s$e*+)as FROM '&od!+$os WHERE E0)s$e*+)as <" N!e(o/'ed)do; SELECT * FROM 'ed)dos WHERE Fe+1a/E*()o " 253#03452; SELECT Apell)dos- Nom6&e FROM Empleados WHERE Apell)dos " %7)*8%; SELECT Apell)dos- Nom6&e FROM Empleados WHERE Apell)dos L)9e %S*%; SELECT Apell)dos- Sala&)o FROM Empleados WHERE Sala&)o .e$:ee* 200 A*d ;00; SELECT Apell)dos- Sala&)o FROM Empl WHERE Apell)dos .e$:ee* %Lo*% A*d %Tol%; SELECT ,d/'ed)do- Fe+1a/'ed)do FROM 'ed)dos WHERE Fe+1a/'ed)do .e$:ee* 2#<#<452 A*d 2;0<=<452; SELECT Apell)dos- Nom6&e- C)!dad FROM Empleados WHERE C)!dad ,* (%Se()lla%- %Los A*8eles%- %.a&+elo*a% ;

A:$7A 7# 8;;=(#

onsultas )8L &6"9'


Icultar todo Nota Ha !n#ormac!Dn reco !da en este tema sDlo se a*l!car8 a bases de datos de G!croso#t ,ccess +.mdb3. >na consulta .JH es una consulta creada con una !nstrucc!Dn .JH +cadena o !nstrucc!Dn de .JH6 e7*res!Dn que de#!ne un comando de .JH, como . .e *uede ut!l!zar el len ua5e de consulta estructurado .JH *ara consultar, actual!zar y adm!n!strar bases de datos relac!onales, como G!croso#t ,ccess. <uando se crea una consulta en la v!sta D!seKo +v!sta D!seKo6 ventana que muestra el d!seKo de estos ob5etos de base de datos6 tablas, consultas, #ormular!os, !n#ormes, macros y *8 !nas de acceso a datos. $n la v!sta D!seKo, *uede crear ob5etos de base de datos nuevos y mod!#!car el d!seKo de otros e7!stentes.3 de la consulta, ,ccess construye en se undo *lano las !nstrucc!ones .JH equ!valentes. De "ec"o, la mayora de las *ro*!edades de consulta de la "o5a de *ro*!edades de la v!sta D!seKo de la consulta t!enen cl8usulas y o*c!ones equ!valentes a las que est8n d!s*on!bles en la v!sta .JH +v!sta .JH6 ventana que muestra la !nstrucc!Dn .JH *ara la consulta act!va o que se ut!l!za *ara crear una consulta es*ec#!ca de .JH +un!Dn,

*aso a travLs o de#!n!c!Dn de datos3. <uando se crea una consulta en la v!sta D!seKo, ,ccess construye el .JH equ!valente en la v!sta .JH.3. .! lo desea, *uede ver o ed!tar la !nstrucc!Dn .JH en la v!sta .JH. .!n embar o, des*uLs de "acer camb!os en una consulta en la v!sta .JH, *uede que su as*ecto no sea el que tena en la v!sta D!seKo. ,l unas consultas .JH, denom!nadas consultas es*ec#!cas de .JH +consulta es*ec#!ca de .JH6 consulta que consta de una !nstrucc!Dn .JH. Has subconsultas y consultas de *aso a travLs, un!Dn y de#!n!c!Dn de datos son consultas es*ec#!cas de .JH.3, no se *ueden crear en la cuadrcula de d!seKo +cuadrcula de d!seKo6 cuadrcula ut!l!zada *ara d!seKar una consulta o un #!ltro en la v!sta D!seKo de consulta o en la ventana E!ltro u orden avanzado. Para las consultas, esta cuadrcula se conoca antes como la cuadrcula J;$.3. $n el caso de las consultas *aso a travLs +consulta de *aso a travLs6 una consulta es*ec#!ca de .JH que se ut!l!za *ara env!ar comandos d!rectamente a un serv!dor de base de datos ID;<. Has consultas de *aso a travLs *erm!ten traba5ar d!rectamente con las tablas del serv!dor en lu ar de "acer que el motor de base de datos G!croso#t Met *rocese los datos.3, consultas de de#!n!c!Dn de datos +consulta de de#!n!c!Dn de datos6 consulta es*ec#!ca de .JH que cont!ene !nstrucc!ones DDH +len ua5e de de#!n!c!Dn de datos3. $stas !nstrucc!ones *erm!ten crear o alterar ob5etos de la base de datos.3 y consultas de comb!nac!Dn +consulta de un!Dn6 consulta que ut!l!za el o*erador , debe crear las !nstrucc!ones .JH d!rectamente en la v!sta .JH. $n el caso de las subconsultas +subconsulta6 !nstrucc!Dn , la !nstrucc!Dn .JH se escr!be en la #!la Campo o en la #!la Criterios de la cuadrcula de d!seKo de la consulta. DDnde se ut!l!zan las !nstrucc!ones .JH $n ,ccess, se *ueden ut!l!zar !nstrucc!ones .JH en muc"os lu ares donde se *ueda escr!b!r el nombre de una tabla, consulta o cam*o. $n al unos casos, ,ccess rellena la !nstrucc!Dn .JH autom8t!camente. Por e5em*lo, cuando se ut!l!za un as!stente *ara crear un #ormular!o o un !n#orme que toma los datos de m8s de una tabla, ,ccess crea autom8t!camente una !nstrucc!Dn .JH que ut!l!za como valor *ara la *ro*!edad OrigenDelRegistro (RecordSource) del #ormular!o o !n#orme. <uando se ut!l!za un as!stente *ara crear un cuadro de l!sta o un cuadro comb!nado, ,ccess crea una !nstrucc!Dn .JH y la ut!l!za como valor *ara la *ro*!edad OrigenDeLaFila (RowSource) del cuadro de l!sta o cuadro comb!nado. .! se desea enerar una !nstrucc!Dn .JH *ara las *ro*!edades OrigenDelRegistro (RecordSource) u OrigenDeLaFila (RowSource) s!n ut!l!zar un as!stente, "a a cl!c en el botDn enerar que se encuentra 5unto a estas *ro*!edades y, a cont!nuac!Dn, cree una consulta en la v!sta D!seKo de la consulta. 9amb!Ln se *ueden ut!l!zar !nstrucc!ones .JH med!ante *ro ramac!Dn en6

$l ar umento /nstrucc!Dn .JH de la acc!Dn de macro $5ecutar.JH. $l cDd! o, como cadena l!teral o como !nstrucc!Dn .JH que !ncluya var!ables y controles +control6 ob5eto de !nter#az r8#!ca *ara el usuar!o, como un cuadro de te7to, una cas!lla de ver!#!cac!Dn, una barra de des*lazam!ento o un botDn de comando, que *erm!te a los usuar!os controlar el *ro rama. >t!l!ce los controles *ara mostrar datos y o*c!ones, real!zar una o*c!Dn o #ac!l!tar la lectura de la !nter#az.3. Ha *ro*!edad S!L de un ob5eto !uer"De# *ara camb!ar la !nstrucc!Dn .JH base de una consulta.

>sar e7*res!ones en .JH Puede escr!b!r una e7*res!Dn en una !nstrucc!Dn .JH .$H$<9 o en una cl8usula NO$=$, I=D$= ;(, P=I>P ;( o O,Q/-P. 9amb!Ln *uede escr!b!r una e7*res!Dn .JH en var!os valores de ar umentos +ar umento6 valor que *ro*orc!ona !n#ormac!Dn a una acc!Dn, un evento, un mLtodo, una *ro*!edad, una #unc!Dn o un *roced!m!ento.3 y *ro*!edades +*ro*!edad6 atr!buto con nombre de un control, cam*o u ob5eto de base de datos que se establece *ara de#!n!r una de las caracterst!cas del ob5eto +*or e5em*lo, el tamaKo, el color o su *os!c!Dn en *antalla3 o un as*ecto de su com*ortam!ento +*or e5em*lo, s! est8 oculto o no3.3. Por e5em*lo, *uede ut!l!zar una e7*res!Dn .JH como6

,r umento <ond!c!Dn NO$=$ de la acc!Dn ,br!rEormular!o o ,*l!carE!ltro. ,r umento de dom!n!o o cr!ter!os en una #unc!Dn de a re ado de dom!n!o +#unc!Dn de a re ado de dom!n!o6 #unc!Dn, como . Qalor de la *ro*!edad OrigenDelRegistro (RecordSource) u OrigenDeLaFila (RowSource) en #ormular!os e !n#ormes.

<onsultas es*ec#!cas de .JH <onsulta de un!Dn >na consulta de comb!nac!Dn comb!na cam*os de dos o m8s tablas o consultas en un solo cam*o en los resultados de la consulta. >na consulta de comb!nac!Dn se *uede ut!l!zar *ara comb!nar datos de dos tablas. Por e5em*lo, se *ueden comb!nar datos de nombres de or an!zac!ones y de c!udades de todas las or an!zac!ones de ;ras!l que a*arezcan en las tablas Proveedores y <l!entes. Des*uLs, se *uede constru!r una consulta de creac!Dn de tabla basada en la consulta de comb!nac!Dn *ara crear una tabla nueva.

Ha *r!mera !nstrucc!Dn .$H$<9 devuelve dos cam*os ... ... la se unda !nstrucc!Dn .$H$<9 devuelve dos cam*os corres*ond!entes y des*uLs ... ... comb!na en una sola tabla los valores de los cam*os corres*ond!entes de ambas tablas. <onsulta de *aso a travLs >na consulta *aso a travLs enva comandos d!rectamente a las bases de datos ID;< +base de datos ID;<6 base de datos *ara la que se d!s*one de un controlador ID;< +conect!v!dad ab!erta de bases de datos3 que *uede ut!l!zarse *ara !m*ortar, v!ncular o e7*ortar datos.3, como G!croso#t Eo7Pro, med!ante comandos ace*tados *or el serv!dor. Por e5em*lo, *uede em*lear una consulta de *aso a travLs *ara recu*erar re !stros o mod!#!car datos. Ged!ante las consultas de *aso a travLs se traba5a d!rectamente con las tablas del serv!dor, en vez de establecer v!nculac!Dn +v!ncular +tablas36 acc!Dn que establece una cone7!Dn a datos desde otra a*l!cac!Dn *ara que *ueda ver y ed!tar los datos tanto en la a*l!cac!Dn or! !nal como en ,ccess.3 a ellas. Has consultas *aso a travLs son tamb!Ln t!les *ara e5ecutar *roced!m!entos almacenados +*roced!m!ento almacenado6 colecc!Dn *recom*!lada de !nstrucc!ones .JH e !nstrucc!ones de control de #lu5o o*c!onales almacenadas con un n!co nombre y *rocesadas como una un!dad. Ha colecc!Dn se almacena en una base de datos .JH y se *uede e5ecutar con una llamada desde una a*l!cac!Dn.3 en un serv!dor ID;< +ID;< +<onect!v!dad ab!erta de bases de datos36 mLtodo est8ndar *ara com*art!r datos entre bases de datos y *ro ramas. Hos controladores ID;< ut!l!zan .JH +Hen ua5e de consulta estructurado3 *ara obtener acceso a datos e7ternos.3. <onsulta de de#!n!c!Dn de datos >na consulta de de#!n!c!Dn de datos crea, el!m!na o mod!#!ca tablas, o crea nd!ces en una tabla de base de datos. Por e5em*lo, la s! u!ente consulta de de#!n!c!Dn de datos ut!l!za la !nstrucc!Dn <=$,9$ 9,;H$ *ara crear una tabla denom!nada ,m! os. Ha !nstrucc!Dn !ncluye el nombre y el t!*o de datos +t!*o de datos6 caracterst!ca de un cam*o que determ!na el t!*o de datos que *uede alber ar. Hos t!*os de datos son6 ;ooleano, $ntero, Har o, Goneda, .!m*le, Doble, Eec"a, <adena y Qar!ant +*redeterm!nado3.3 de cada cam*o de la tabla, y as! na al cam*o /d,m! o un nd!ce +nd!ce6 #unc!Dn que acelera la bsqueda y la

ordenac!Dn de una tabla se n unos valores clave y que *uede ayudar a ev!tar du*l!cados en las #!las de una tabla. Ha clave *r!nc!*al de una tabla se !nd!za autom8t!camente. ,l unos cam*os no se *ueden !nd!zar deb!do a su t!*o de datos.3 que lo !dent!#!ca como clave *r!nc!*al +clave *r!nc!*al6 uno o m8s cam*os +columnas3 cuyos valores !dent!#!can de manera e7clus!va cada re !stro de una tabla. >na clave *r!nc!*al no *uede *erm!t!r valores .

CREATE TA.LE Am)8os (>,dAm)8o? e*$e&o>Apell)dos? $e0$o>Nom6&e? $e0$o>C!mplea@os? Ae+1a>TelBAo*o? $e0$o>No$as? memoCONSTRA,NT >C*d)+e#? 'R,MARD 7ED (>,dAm)8o?
.ubconsulta

>na subconsulta es una !nstrucc!Dn .JH .$H$<9 dentro de otra consulta de selecc!Dn o de acc!Dn. Puede !ntroduc!r estas !nstrucc!ones en la #!la Campo de la cuadrcula de d!seKo +cuadrcula de d!seKo6 cuadrcula ut!l!zada *ara d!seKar una consulta o un #!ltro en la v!sta D!seKo de consulta o en la ventana E!ltro u orden avanzado. Para las consultas, esta cuadrcula se conoca antes como la cuadrcula J;$.3 de la consulta *ara de#!n!r un cam*o nuevo o b!en en la #!la Criterios *ara de#!n!r los cr!ter!os de un cam*o. Puede ut!l!zar las subconsultas *ara6

<om*robar s! e7!ste un resultado de la subconsulta +med!ante las *alabras clave $R/.9. o -I9 $R/.9.3. ;uscar valores de la consulta *r!nc!*al que sean ! uales, mayores o menores que los valores devueltos *or la subconsulta +med!ante las *alabras reservadas ,-(, /- o ,HH3. <rear subconsultas dentro de las subconsultas +subconsultas an!dadas3.

$Le %a resultado &til esta in#ormaci'n(