Vous êtes sur la page 1sur 9

Introducción a los criterios de consulta

Un criterio es similar a una fórmula (es una cadena que puede consistir en referencias de campos,
operadores y constantes). Los criterios de consulta también se conocen como expresiones en Access.

En las tablas siguientes, se muestran algunos ejemplos de criterios y se explica su funcionamiento.

Criterios Descripción
Este criterio se aplica a campos Número, como Precio o UnidadesEnStock.
El resultado incluye solamente aquellos registros en los que el campo
>25 y <50
Precio o UnidadesEnStock contiene un valor mayor que 25 y menor que
50.
Este criterio se aplica a campos Fecha/Hora, como FechaNacimiento. En el
DifFecha("aaaa",
resultado de la consulta, sólo se incluyen los registros en los que el número
[FechaNacimiento], Fecha())
de años entre la fecha de nacimiento de una persona y la fecha actual
> 30
es mayor que 30.
Este criterio se puede aplicar a cualquier tipo de campo para que se
Es Nulo
muestren los registros en los que el valor de campo sea nulo.

Como ve, los criterios pueden ser muy distintos unos de otros, dependiendo del tipo de datos del campo
en el que se apliquen y de los requisitos específicos en cada caso. Algunos criterios son sencillos y usan
operadores básicos y constantes. Otros son complejos y usan funciones y operadores especiales, e
incluyen referencias de campo.

Este tema contiene varios criterios usados comúnmente, organizados por tipo de datos. Si los ejemplos
que se presentan en este tema no se pueden aplicar a sus necesidades específicas, es posible que
tenga que escribir sus propios criterios. Para ello, debe familiarizarse con la lista completa de funciones,
operadores y caracteres especiales y con la sintaxis para expresiones para hacer referencia a campos y
literales.

Aquí verá dónde y cómo se agregan los criterios. Para agregar un criterio a una consulta, debe abrirla en
la vista Diseño. Después, identifique los campos para los que desea especificar criterios. Si el campo no
está aún en la cuadrícula de diseño, agréguelo arrastrándolo desde la ventana de diseño de la consulta
hasta la cuadrícula, o bien, haciendo doble clic en el campo (De este modo, se agrega automáticamente
a la siguiente columna vacía de la cuadrícula.). Por último, escriba los criterios en la fila Criterios.

Los criterios que especifique para los distintos campos en la fila Criterios se combinan mediante el
operador Y. Dicho de otro modo, los criterios especificados en los campos Ciudad y FechaNacimiento se
interpretan así:

Ciudad = "Chicago" Y FechaNacimiento < AgregFecha("aaaa", -40, Fecha())

Los campos Ciudad y FechaNacimiento incluyen criterios.


Sólo los registros cuyo valor para el campo Ciudad sea Chicago se ajustarán al criterio.
Sólo los registros que tengan como mínimo 40 años de antigüedad se ajustarán al criterio.
Sólo los registros que cumplan los dos criterios se incluirán en los resultados.
¿Y si sólo desea que se cumpla una de estas condiciones? Es decir, si tiene criterios alternativos, ¿cómo
lo expresa?

Si tiene criterios alternativos, o dos conjuntos de criterios independientes donde basta con que se cumpla
un conjunto, use las filas Criterios y o en la cuadrícula de diseño.

El criterio Ciudad se especifica en la fila Criterios.


El criterio FechaNacimiento se especifica en la fila O.

Los criterios especificados en las filas Criterios y o se combinan utilizando el operador O, como se
muestra a continuación:

Ciudad = "Chicago" O FechaNacimiento < AgregFecha("aaaa", -40, Fecha())

Si necesita especificar más alternativas, use las filas situadas debajo de la fila o.

Antes de continuar con los ejemplos, tenga en cuenta lo siguiente:

• Si los criterios son temporales o cambian a menudo, puede filtrar el resultado de la consulta en
lugar de estar modificando continuamente los criterios. Un filtro es un criterio temporal que cambia el
resultado de la consulta sin modificar el diseño de ésta. Para obtener más información sobre los filtros,
vea el artículo Filtrar: limitar el número de registros en una vista.
• Si los campos de criterios no cambian pero los valores que le interesan sí cambian con
frecuencia, puede crear una consulta de parámetros. Una consulta de parámetros solicita al usuario
valores de campos y luego utiliza estos valores para crear los criterios de consulta.

Criterios para campos Texto, Memo e Hipervínculo


Los ejemplos siguientes son para el campo PaísRegión de una consulta basada en una tabla donde se
almacenan datos de contacto. El criterio se especifica en la fila Criterios del campo en la cuadrícula de
diseño.

Para incluir registros


Use este criterio Resultado de la consulta
que...
Coincidan exactamente
Devuelve los registros en los que el campo
con un valor, como "China"
PaísRegión tiene el valor China.
China
No coincidan con un Devuelve los registros en los que el campo
No "México"
valor, como México PaísRegión tiene un valor distinto de México.
Empiecen por la cadena Como U* Devuelve los registros correspondientes a todos los
Para incluir registros
Use este criterio Resultado de la consulta
que...
países o regiones cuyos nombres empiezan por
"U", como Uruguay, Uganda, etc.

especificada, como U Nota Cuando se utiliza en una expresión, el


asterisco (*) representa cualquier cadena de
caracteres (también se le denomina "carácter
comodín"). Para obtener una lista de este tipo de
caracteres, vea el artículo
No empiecen por la Devuelve los registros correspondientes a todos los
cadena especificada, No como U* países o regiones cuyos nombres empiezan por un
como U carácter distinto de "U".
Contengan la cadena
Devuelve los registros correspondientes a todos los
especificada, como Como "*Corea*"
países o regiones que contienen la cadena "Corea".
Corea
No contengan la cadena Devuelve los registros correspondientes a todos los
especificada, como No como "*Corea*" países o regiones que no contienen la cadena
Corea "Corea".
Devuelve los registros correspondientes a todos los
Acaben con la cadena
Como "*ina" países o regiones cuyos nombres acaban con "ina"
especificada, como "ina"
como China y Argentina.
No acaben con la Devuelve los registros correspondientes a todos los
cadena especificada, No como "*ina" países o regiones cuyos nombres no acaban con
como "ina" "ina", como China y Argentina.
Contengan valores Devuelve los registros en los que no hay ningún
Es Nulo
nulos (o que falten) valor en el campo.
No contengan valores Devuelve los registros en los que no falta el valor
No es Nulo
nulos del campo.
Devuelve los registros en los que el campo tiene un
valor en blanco (pero no nulo). Por ejemplo, los
Contengan cadenas de
"" (un par de comillas) registros de ventas realizada a otro departamento
longitud cero
podrían contener un valor en blanco en el campo
PaísRegión.
No contengan cadenas Devuelve los registros en los que el campo
No ""
de longitud cero PaísRegión no tiene un valor en blanco.
Contengan valores Devuelve los registros donde no hay ningún valor
nulos o cadenas de "" O Es Nulo en el campo, o bien, el campo tiene un valor en
longitud cero. blanco.
Devuelve los registros en los que el campo
Ni vacío ni en blanco No es Nulo Y Sin ""
PaísRegión tiene un valor no en blanco y no nulo.
Vayan a continuación de
Devuelve los registros de todos los países o
un valor, como México,
>= "México" regiones a partir de México y posteriores por orden
si se ordenan
alfabético.
alfabéticamente
Estén incluidos en un Devuelve los registros correspondientes a los
intervalo específico, Como "[A-D]*" países o regiones cuyos nombres empiezan por las
como de la A hasta la D letras "A" a la "D".
Coincidan con uno de
dos valores, tales como "Estados Unidos" O "Reino Devuelve los registros correspondientes a Estados
Estados Unidos o Reino Unido" Unidos y Reino Unido.
Unido
Contengan uno de los En("Francia", "China", Devuelve los registros correspondientes a todos los
valores de una lista "Alemania", "Japón") países o regiones especificados en la lista.
Contengan ciertos
Devuelve los registros correspondientes a todos los
caracteres en una
Der([PaísRegión], 1) = "y" países o regiones cuyo nombre acaba con la letra
posición específica en el
"y".
valor del campo
Devuelve los registros correspondientes a los
Satisfagan requisitos de Longitud([PaísRegión]) >
países o regiones cuyo nombre tiene más de 10
longitud 10
caracteres.
Para incluir registros
Use este criterio Resultado de la consulta
que...
Devuelve los registros correspondientes a los
países o regiones cuyos nombres tienen cinco
caracteres de longitud y los tres primeros caracteres
son "Chi", como China y Chile.

Coincidan con un Nota Los caracteres ? y _, cuando se usan en


Como "Chi??" una expresión, representan un solo carácter
modelo específico
(también se les denomina "caracteres comodín"). El
carácter _ no se puede usar en la misma expresión
junto con el carácter ? ni con el carácter comodín *.
El carácter comodín _ se puede usar en una
expresión que también contiene el carácter comodín
%.

Criterios para campos Número, Moneda y Autonumérico


Los ejemplos siguientes son para el campo PrecioUnidad de una consulta basada en una tabla donde se
almacena información de productos. El criterio se especifica en la fila Criterios del campo en la
cuadrícula de diseño de la consulta.

Para incluir
Use este criterio Resultado de la consulta
registros que...
Coincidan
Devuelve los registros en los que el precio por unidad del
exactamente con un 100
producto es 100 $.
valor, como 100
No coincidan con un Devuelve los registros en los que el precio por unidad del
No 1000
valor, como 1000 producto no es 1000 $.
Devuelve los registros en los que el precio por unidad es
Contengan un valor
< 100 menor que 100 $ (<100). La segunda expresión (<=100)
menor que otro
<= 100 muestra los registros en los que el precio por unidad es menor
valor, como 100
o igual que 100 $.
Devuelve los registros en los que el precio por unidad es
Contengan un valor
>99,99 mayor que 99,99 $ (>99,99). La segunda expresión muestra
mayor que otro
>=99,99 los registros en los que el precio por unidad es mayor o igual
valor, como 99,99
que 99,99 $.
Contengan uno de
Devuelve los registros en los que el precio por unidad es 20 $
entre dos valores, 20 o 25
ó 25 $.
como 20 ó 25
Contengan un valor >49,99 Y <99,99
Devuelve los registros en los que el precio por unidad está
que esté incluido en O bien,
entre (pero sin incluir) 49,99 $ y 99,99 $.
un intervalo Entre 50 Y 100
Contengan un valor
Devuelve los registros en los que el precio por unidad no está
que esté fuera de un <50 O >100
entre 50 $ y 100 $.
intervalo
Contengan uno Devuelve los registros en los que el precio por unidad es 20 $,
En(20, 25, 30)
entre varios valores 25 $ ó 30 $.
Devuelve los registros en los que el precio por unidad acaba
con "4,99", como 4,99 $, 14,99 $, 24,99 $, etc.

Contengan un valor Nota Los caracteres * y %, cuando se usan en una


que acabe con los Como "*4,99" expresión, representan cualquier número de caracteres, que
dígitos especificados también se denominan "caracteres comodín". El carácter %
no se puede usar en la misma expresión junto con el carácter
* ni con el carácter comodín ?. El carácter comodín % se
puede usar en una expresión que también contiene el carácter
comodín _.
Para incluir
Use este criterio Resultado de la consulta
registros que...
Contengan valores Devuelve los registros en los que no se ha especificado
Es Nulo
nulos (o que falten) ningún valor en el campo PrecioUnidad.
Contengan valores Devuelve los registros en los que no falta el valor del campo
No es Nulo
no nulos PrecioUnidad.

Criterios para campos Fecha/Hora


Los ejemplos siguientes son para el campo FechaPedido de una consulta basada en una tabla donde se
almacena información de pedidos. El criterio se especifica en la fila Criterios del campo en la cuadrícula
de diseño de la consulta.

Para incluir registros


Use este criterio Resultado de la consulta
que...
Devuelve los registros de las
transacciones que tuvieron
lugar el 2 de febrero de 2006.
Coincidan
No olvide rodear los valores
exactamente con un #2/2/2006#
de fechas con el carácter #,
valor, como 2/2/2006
para que Access pueda
distinguir entre fechas y
cadenas de texto.
Devuelve los registros de las
No coincidan con un transacciones que tuvieron
No #2/2/2006#
valor, como 2/2/2006 lugar en una fecha distinta al
3 de febrero de 2006.
Devuelve los registros de las
transacciones que tuvieron
lugar antes del 2 de febrero
Contengan valores de 2006.
anteriores a una fecha
< #2/2/2006#
determinada, como el
2/2/2006 Para ver las transacciones
que tuvieron lugar en esa
fecha o antes, use el
operador <= en lugar de <.
Devuelve los registros de las
transacciones que tuvieron
lugar después del 2 de
Contengan valores febrero de 2006.
posteriores a una
> #2/2/2006#
fecha determinada,
como el 2/2/2006 Para ver las transacciones
que tuvieron lugar en esa
fecha o después, use el
operador >= en lugar de >.
Devuelve los registros de las
transacciones que tuvieron
lugar entre el 2 de febrero de
2006 y el 4 de febrero de
2006.
Contengan valores
que estén dentro de >#2/2/2006# Y <#4/2/2006# También puede usar el
un intervalo de fechas operador Entre para filtrar
según un intervalo de
valores. Por ejemplo, Entre
#2/2/2006# Y #4/2/2006# es
lo mismo que >#2/2/2006# Y
<#2/4/2006#.
Para incluir registros
Use este criterio Resultado de la consulta
que...
Devuelve los registros de las
Contengan valores transacciones que tuvieron
que estén fuera de un <#2/2/2006# O >#4/2/2006# lugar antes del 2 de febrero
intervalo de 2006 o después del 4 de
febrero de 2006.
Devuelve los registros de las
Contengan uno de dos
transacciones que tuvieron
valores, como #2/2/2006# O #3/2/2006#
lugar el 2 de febrero de 2006
2/2/2006 o 3/2/2006
o el 3 de febrero de 2006.
Devuelve los registros de las
transacciones que tuvieron
Contengan uno entre
En (#1/2/2006#, #1/3/2006#, #1/4/2006#) lugar el 1 de febrero de 2006,
varios valores
el 1 de marzo de 2006 o el 1
de abril de 2006.
Contengan una fecha
que sea de un mes Devuelve los registros de las
específico transacciones que tuvieron
ParcFecha("m", [FechaVenta]) = 12
(independientemente lugar en diciembre de
del año), como cualquier año.
diciembre
Contengan una fecha
que sea de un Devuelve los registros de las
trimestre específico transacciones que tuvieron
ParcFecha("t", [FechaVenta]) = 1
(independientemente lugar en el primer trimestre
del año), como el de cualquier año.
primer trimestre
Devuelve los registros de las
transacciones que tuvieron
lugar en la fecha en curso. Si
Contengan la fecha en
Fecha() hoy es el 2/2/2006, verá los
curso
registros en los que el campo
FechaPedido tiene el valor 2
de febrero de 2006.
Devuelve los registros de las
transacciones que tuvieron
lugar en el día anterior a la
Contengan la fecha de
Fecha()-1 fecha en curso. Si hoy es el
ayer
2/2/2006, verá los registros
correspondientes al 1 de
febrero de 2006.
Devuelve los registros de las
transacciones que tendrán
lugar en el día posterior a la
Contengan la fecha de
Fecha() + 1 fecha en curso. Si hoy es el
mañana
2/2/2006, verá los registros
correspondientes al 3 de
febrero de 2006.
Devuelve los registros de las
transacciones que tuvieron
Contengan fechas que
ParcFecha("ss", [FechaVenta]) = ParcFecha("ss", lugar durante la semana en
sean de la semana en
Fecha()) Y Año( [FechaVenta]) = Año(Fecha()) curso. Una semana empieza
curso
en domingo y termina en
sábado.
Devuelve los registros de las
transacciones que tuvieron
Contengan fechas que Año([FechaVenta])* 53 + ParcFecha("ss",
lugar durante la semana
sean de la semana [FechaVenta]) = Año(Fecha())* 53 +
pasada. Una semana
anterior ParcFecha("ss", Fecha()) - 1
empieza en domingo y
termina en sábado.
Contengan fechas que Año([FechaVenta])* 53+ParcFecha("ss", Devuelve los registros de las
sean de la semana [FechaVenta]) = Año(Fecha())* 53+ParcFecha("ss", transacciones que tendrán
Para incluir registros
Use este criterio Resultado de la consulta
que...
lugar la semana próxima.
Una semana empieza en
próxima Fecha()) + 1
domingo y termina en
sábado.
Devuelve los registros de las
transacciones que tuvieron
lugar durante los 7 últimos
Contengan fechas que
días. Si hoy es el 2/2/2006,
sean de los 7 últimos Entre Fecha() Y Fecha()-6
verá los registros
días
correspondientes al período
del 24 de enero de 2006 al 2
de febrero de 2006.
Devuelve los registros
correspondientes al mes en
Contengan una fecha
Año([FechaVenta]) = Año(Ahora()) curso. Si hoy es el 2/2/2006,
que sea del mes en
Y Mes([FechaVenta]) = Mes(Ahora()) verá los registros
curso
correspondientes a febrero
de 2006.
Devuelve los registros
correspondientes al mes
Contengan una fecha Año([FechaVenta])* 12 + ParcFecha("m",
pasado. Si hoy es el
que sea del mes [FechaVenta]) = Año(Fecha())* 12 +
2/2/2006, verá los registros
anterior ParcFecha("m", Fecha()) - 1
correspondientes a enero de
2006.
Devuelve los registros
correspondientes al mes
Contengan una fecha Año([FechaVenta])* 12 + ParcFecha("m",
próximo. Si hoy es el
que sea del mes [FechaVenta]) = Año(Fecha())* 12 +
2/2/2006, verá los registros
próximo ParcFecha("m", Fecha()) + 1
correspondientes a marzo de
2006.
Los registros de ventas de un
período de un mes. Si hoy es
Contengan fechas que
el 2/2/2006, verá los registros
sean de los 30 ó 31 Entre Fecha( ) Y AgregFecha("M", -1, Fecha( ))
correspondientes al período
últimos días
del 2 de enero de 2006 al 2
de febrero de 2006.
Devuelve los registros
correspondientes al trimestre
Contengan una fecha
Año([FechaVenta]) = Año(Ahora()) Y ParcFecha("t", en curso. Si hoy es el
que sea del trimestre
Fecha()) = ParcFecha("t", Ahora()) 2/2/2006, verá los registros
en curso
correspondientes al primer
trimestre de 2006.
Devuelve los registros
correspondientes al trimestre
Contengan una fecha
Año([FechaVenta])*4+ParcFecha("t",[FechaVenta]) anterior. Si hoy es el
que sea del trimestre
= Año(Fecha())*4+ParcFecha("t",Fecha())- 1 2/2/2006, verá los registros
anterior
correspondientes al último
trimestre de 2005.
Devuelve los registros
correspondientes al próximo
Contengan una fecha
Año([FechaVenta])*4+ParcFecha("t",[FechaVenta]) trimestre. Si hoy es el
que sea del próximo
= Año(Fecha())*4+ParcFecha("t",Fecha())+1 2/2/2006, verá los registros
trimestre
correspondientes al segundo
trimestre de 2006.
Devuelve los registros
correspondientes al año en
Contengan fechas que curso. Si hoy es el 2/2/2006,
Año([FechaVenta]) = Año(Fecha())
sean del año en curso verá los registros
correspondientes al año
2006.
Contengan una fecha Año([FechaVenta]) = Año(Fecha()) - 1 Devuelve los registros de las
Para incluir registros
Use este criterio Resultado de la consulta
que...
transacciones que tuvieron
lugar durante el año pasado.
que sea del año Si hoy es el 2/2/2006, verá
anterior los registros
correspondientes al año
2005.
Devuelve los registros de las
transacciones con fecha en el
Contengan una fecha
año próximo. Si hoy es el
que sea del año Año([FechaVenta]) = Año(Fecha()) + 1
2/2/2006, verá los registros
próximo
correspondientes al año
2007.
Devuelve los registros de las
transacciones con fechas
Contengan una fecha entre el 1 de enero del año
Año([FechaVenta]) = Año(Fecha()) Y
que esté entre el 1 de en curso y la fecha actual. Si
Mes([FechaVenta]) <= Mes(Fecha()) Y
enero y hoy (registros hoy es el 2/2/2006, verá los
Día([FechaVenta]) <= Día (Fecha())
del año hasta la fecha) registros correspondientes al
período del 1 de enero de
2006 al 2 de febrero de 2006.
Devuelve los registros de las
Contengan una fecha
< Fecha() transacciones que tuvieron
ya pasada
lugar antes de hoy.
Devuelve los registros de las
Contengan una fecha
> Fecha() transacciones que tendrán
del futuro
lugar después de hoy.
Devuelve los registros en los
Filtren valores nulos (o
Es Nulo que falta la fecha de la
que falten)
transacción.
Devuelve los registros en los
Filtren valores no
No es Nulo que se conoce la fecha de la
nulos
transacción.
Criterios para otros campos
Campos Sí/No En la fila Criterios, escriba Sí para incluir los registros que tengan activada la casilla de
verificación. Escriba No para incluir los registros que no tengan activada la casilla de verificación.

Datos adjuntos En la fila Criterios, escriba Es Nulo para incluir los registros que no contengan datos
adjuntos. Escriba No es Nulo para incluir los registros que sí contengan datos adjuntos.

Campos de búsqueda Hay dos tipos de campos de búsqueda: los que buscan valores en un origen de
datos existente (mediante una clave externa) y los que se basan en una lista de valores especificados al
crearse el campo de búsqueda.

Los campos de búsqueda que se basan en una lista de valores especificados son del tipo de datos
Texto, y los criterios válidos son los mismos que para otros campos de texto.

Los criterios que se pueden usar en un campo de búsqueda basado en valores de un origen de datos
existente dependen del tipo de datos de la clave externa, y no del tipo de los datos que se buscan. Por
ejemplo, suponga que tiene un campo de búsqueda que muestra los nombres de empleados, pero usa
una clave externa de tipo de datos Número. Puesto que el campo almacena un número en lugar de texto,
usted utilizará criterios válidos para números, es decir, >2.

Si no conoce el tipo de datos de la clave externa, puede examinar la tabla de origen en la vista Diseño
para determinar los tipos de datos de los campos.

Vous aimerez peut-être aussi