18/08/2023
Microsoft Access es una herramienta formidable para la gestión de bases de datos, permitiendo a los usuarios organizar, almacenar y recuperar grandes volúmenes de información. Sin embargo, el verdadero poder de Access reside en su capacidad para filtrar y extraer datos específicos mediante el uso de criterios en las consultas. Los criterios son, en esencia, expresiones que Access evalúa para decidir qué registros incluir en el conjunto de resultados de una consulta. Si un registro cumple con todos los criterios que usted especifica, aparecerá en los resultados; de lo contrario, será omitido. Comprender cómo aplicar estos criterios, especialmente los de texto, es fundamental para cualquier usuario que desee sacarle el máximo provecho a sus bases de datos.

Este artículo explorará en profundidad cómo utilizar criterios de texto en Access, proporcionando ejemplos claros y detallados que le ayudarán a dominar esta habilidad esencial. Desde la búsqueda de coincidencias exactas hasta el uso de caracteres comodín para patrones complejos, aprenderá a construir consultas robustas que le brinden exactamente la información que necesita.
- ¿Qué son los Criterios de Consulta en Access?
- Criterios para Campos de Texto, Memo e Hipervínculo
- Criterios para Campos Numéricos, Moneda y Autonumérico
- Criterios para Campos de Fecha/Hora
- Criterios para Campos Sí/No
- Criterios en Campos Calculados y Validación de Datos
- Preguntas Frecuentes sobre Criterios en Access
¿Qué son los Criterios de Consulta en Access?
Un criterio de consulta en Access es una expresión que se compara con los valores de los campos de una consulta para determinar si un registro debe incluirse en el resultado. Piensen en ellos como reglas o condiciones. Por ejemplo, si tienen un campo de texto llamado "Ciudad" y desean ver solo los registros de "Madrid", su criterio sería simplemente ="Madrid". Access evaluará cada registro y solo mostrará aquellos donde el valor del campo Ciudad sea exactamente "Madrid".
Los criterios pueden variar enormemente en complejidad. Algunos son tan simples como un valor específico, mientras que otros incorporan operadores, funciones y referencias a otros campos. La clave para utilizarlos eficazmente es comprender la sintaxis y los tipos de operadores disponibles para cada tipo de dato.
Cómo Añadir Criterios a una Consulta
Para añadir criterios a una consulta en Access, debe trabajar en la vista Diseño de la consulta. Siga estos pasos:
- Abra la consulta que desea modificar en la vista Diseño. Si aún no tiene una consulta, puede crear una nueva.
- Identifique los campos (columnas) para los que desea especificar criterios.
- Si el campo aún no está en la cuadrícula de diseño (la parte inferior de la ventana de diseño de consulta), haga doble clic en el campo en la lista de tablas/consultas o arrástrelo a la cuadrícula para añadirlo.
- En la cuadrícula de diseño, busque la fila "Criterios" debajo del campo al que desea aplicar la condición.
- Escriba la expresión del criterio en la celda de la fila "Criterios" para ese campo.
Es importante recordar que los criterios que especifique en la misma fila "Criterios" para diferentes campos se combinan utilizando el operador AND. Esto significa que un registro solo se incluirá en los resultados si cumple todos los criterios en esa fila. Por ejemplo, si en la fila "Criterios" especifica "España" para el campo "País" y "Madrid" para el campo "Ciudad", la consulta solo mostrará registros donde el País sea "España" Y la Ciudad sea "Madrid".

Combinando Criterios con AND y OR
A menudo, necesitará aplicar condiciones alternativas. Aquí es donde entran en juego las filas "Criterios" y "o" (OR) en la cuadrícula de diseño. Si coloca criterios en la fila "Criterios" y en la fila "o", Access los combinará utilizando el operador OR. Esto significa que un registro se incluirá si cumple los criterios de la fila "Criterios" o los criterios de la fila "o".
Puede añadir tantas filas "o" como necesite debajo de la fila "Criterios" para especificar múltiples conjuntos de condiciones alternativas. Cada nueva fila debajo de "o" actuará como una condición OR adicional.
| Campo | Criterios | o | Resultado de la Lógica |
|---|---|---|---|
| País | "España" | País = "España" | |
| Ciudad | "Madrid" | "Barcelona" | (País = "España" AND Ciudad = "Madrid") OR (Ciudad = "Barcelona") |
En el ejemplo anterior, la consulta devolverá registros de "España" y "Madrid", O registros de cualquier país donde la ciudad sea "Barcelona". Tenga cuidado al combinar AND y OR para asegurarse de que la lógica de su consulta sea la deseada.
Criterios para Campos de Texto, Memo e Hipervínculo
Los campos de texto, memo e hipervínculo son fundamentales para almacenar información descriptiva. Los criterios para estos campos son muy versátiles y a menudo implican el uso de cadenas de texto y caracteres comodín. Por defecto, los criterios para campos de hipervínculo se aplican a la porción de texto visible del valor. Para criterios basados en la URL de destino, se usa la función HyperlinkPart.
| Para incluir registros que... | Use este criterio | Resultado de la consulta (Ejemplo con campo "País") |
|---|---|---|
| Coincidan exactamente con un valor | "Chile" | Registros donde el País es exactamente Chile. |
| No coincidan con un valor | Not "México" | Registros de países que no sean México. |
| Empiecen con una cadena específica | Like "Ar*" | Registros de países que empiezan con "Ar", como Argentina o Arabia Saudita. |
| No empiecen con una cadena específica | Not Like "U*" | Registros de países cuyos nombres no empiezan con "U". |
| Contengan una cadena específica | Like "*stan*" | Registros de países que contengan "stan", como Kazajistán o Pakistán. |
| No contengan una cadena específica | Not Like "*ina*" | Registros de países que no contengan "ina". |
| Terminen con una cadena específica | Like "*land" | Registros de países que terminen en "land", como Irlanda o Finlandia. |
| No terminen con una cadena específica | Not Like "*ia" | Registros de países que no terminen en "ia". |
| Contengan valores nulos (vacíos) | Is Null | Registros donde el campo País no tiene ningún valor. |
| No contengan valores nulos | Is Not Null | Registros donde el campo País tiene un valor. |
| Contengan cadenas de longitud cero (vacío pero no nulo) | "" (un par de comillas) | Registros donde el campo País está establecido en un valor en blanco (no nulo). |
| No contengan cadenas de longitud cero | Not "" | Registros donde el campo País tiene un valor no en blanco. |
| Contengan nulos O cadenas de longitud cero | "" Or Is Null | Registros donde el campo País no tiene valor o está en blanco. |
| No estén vacíos ni en blanco | Is Not Null And Not "" | Registros donde el campo País tiene un valor no nulo y no en blanco. |
| Sigan un valor alfabéticamente | >= "Perú" | Registros de países que empiezan por Perú y continúan alfabéticamente. |
| Caigan dentro de un rango específico | Like "[E-G]*" | Registros de países cuyos nombres empiezan con letras de la "E" a la "G". |
| Coincidan con uno de varios valores | "Alemania" Or "Francia" | Registros de Alemania o Francia. |
| Contengan uno de los valores de una lista | In("Brasil", "Canadá", "India") | Registros de Brasil, Canadá o India. |
| Contengan ciertos caracteres en posición específica | Right([País], 1) = "a" | Registros de países cuya última letra sea "a". |
| Satisfagan requisitos de longitud | Len([País]) > 8 | Registros de países cuyo nombre tiene más de 8 caracteres. |
| Coincidan con un patrón específico | Like "Col???" | Registros de países como Colombia, cuyas primeras tres letras son "Col" y tienen 6 caracteres en total. |
Notas Importantes sobre Caracteres Comodín:
- El asterisco (
*) y el signo de porcentaje (%) representan cualquier cadena de caracteres. - El signo de interrogación (
?) y el guion bajo (_) representan un solo carácter. - No se puede usar
_en la misma expresión con?ni con*. Sin embargo,_puede usarse con%.
Criterios para Campos Numéricos, Moneda y Autonumérico
Los criterios para campos numéricos y de moneda son directos y utilizan operadores matemáticos para filtrar valores. Los campos autonuméricos, aunque numéricos, suelen usarse como identificadores únicos y raramente se filtran por rangos, sino por valores exactos si se busca un registro específico.

| Para incluir registros que... | Use este criterio | Resultado de la consulta (Ejemplo con campo "PrecioUnitario") |
|---|---|---|
| Coincidan exactamente con un valor | 100 | Registros donde el precio unitario es 100. |
| No coincidan con un valor | Not 1000 | Registros donde el precio unitario no es 1000. |
| Contengan un valor menor que | < 100 o <= 100 | Registros con precio menor que 100 (o menor o igual que 100). |
| Contengan un valor mayor que | > 99.99 o >= 99.99 | Registros con precio mayor que 99.99 (o mayor o igual que 99.99). |
| Contengan uno de dos valores | 20 Or 25 | Registros donde el precio es 20 o 25. |
| Caigan dentro de un rango de valores | >49.99 And <99.99 o Between 50 And 100 | Registros con precio entre 49.99 y 99.99 (sin incluir); o entre 50 y 100 (incluyendo). |
| Caigan fuera de un rango | <50 Or >100 | Registros con precio menor que 50 o mayor que 100. |
| Contengan uno de muchos valores específicos | In(20, 25, 30) | Registros donde el precio es 20, 25 o 30. |
| Contengan valores nulos | Is Null | Registros donde no hay valor en el campo PrecioUnitario. |
| Contengan valores no nulos | Is Not Null | Registros donde el valor no falta en el campo PrecioUnitario. |
Criterios para Campos de Fecha/Hora
Los campos de fecha/hora son cruciales para el seguimiento de eventos y la cronología. Los criterios para estos campos requieren que los valores de fecha estén encerrados entre el signo de número (#) para que Access los distinga de las cadenas de texto. También se pueden usar funciones de fecha para criterios dinámicos (por ejemplo, "hoy", "esta semana").
| Para incluir registros que... | Use este criterio | Resultado de la consulta (Ejemplo con campo "FechaPedido") |
|---|---|---|
| Coincidan exactamente con una fecha | #2/2/2006# | Transacciones del 2 de febrero de 2006. |
| No coincidan con una fecha | Not #2/2/2006# | Transacciones de un día diferente al 2 de febrero de 2006. |
| Caigan antes de una fecha | < #2/2/2006# o <= #2/2/2006# | Transacciones anteriores al 2 de febrero de 2006 (o anteriores o iguales). |
| Caigan después de una fecha | > #2/2/2006# o >= #2/2/2006# | Transacciones posteriores al 2 de febrero de 2006 (o posteriores o iguales). |
| Caigan dentro de un rango de fechas | >#2/2/2006# And <#2/4/2006# o Between #2/2/2006# And #2/4/2006# | Transacciones entre el 2 y el 4 de febrero de 2006 (el Between incluye los extremos). |
| Caigan fuera de un rango de fechas | <#2/2/2006# Or >#2/4/2006# | Transacciones anteriores al 2 de febrero de 2006 o posteriores al 4 de febrero de 2006. |
| Coincidan con uno de dos valores | #2/2/2006# Or #2/3/2006# | Transacciones del 2 o 3 de febrero de 2006. |
| Coincidan con uno de muchos valores | In (#2/1/2006#, #3/1/2006#, #4/1/2006#) | Transacciones de las fechas especificadas. |
| Caigan en un mes específico (cualquier año) | DatePart("m", [FechaPedido]) = 12 | Transacciones de diciembre de cualquier año. |
| Caigan en un trimestre específico (cualquier año) | DatePart("q", [FechaPedido]) = 1 | Transacciones del primer trimestre de cualquier año. |
| Coincidan con la fecha actual | Date() | Transacciones de hoy. |
| Coincidan con la fecha de ayer | Date()-1 | Transacciones de ayer. |
| Coincidan con la fecha de mañana | Date() + 1 | Transacciones de mañana. |
| Caigan durante la semana actual | DatePart("ww", [FechaPedido]) = DatePart("ww", Date()) And Year([FechaPedido]) = Year(Date()) | Transacciones de la semana actual (domingo a sábado). |
| Caigan durante el mes actual | Year([FechaPedido]) = Year(Now()) And Month([FechaPedido]) = Month(Now()) | Transacciones del mes actual. |
| Caigan durante el año actual | Year([FechaPedido]) = Year(Date()) | Transacciones del año actual. |
| Contengan valores nulos | Is Null | Registros donde la fecha de transacción no está especificada. |
| Contengan valores no nulos | Is Not Null | Registros donde la fecha de transacción está especificada. |
Criterios para Campos Sí/No
Los campos Sí/No (Booleanos) son simples, pero es importante entender cómo Access interpreta los valores. Un campo Sí/No puede almacenar valores como Verdadero/Falso, Sí/No, o 1/0. Access convierte automáticamente ciertos valores ingresados en su representación booleana.
| Valor del Campo | Criterio Interpretado | Resultado de la Consulta |
|---|---|---|
| Sí, Verdadero, 1, -1 | True o Yes | Registros donde el valor es "Sí" (Verdadero). Access convierte 1 o -1 a "True". |
| No, Falso, 0 | False o No | Registros donde el valor es "No" (Falso). Access convierte 0 a "False". |
| Sin valor (nulo) | No evaluado por criterios de Sí/No | No hay resultados si es el único criterio de valor en el campo. |
| Cualquier número distinto de 1, -1, 0 | No produce resultados | Si es el único criterio, la consulta no devolverá registros válidos. |
| Cualquier cadena de caracteres distinta de Sí, No, Verdadero, Falso | Error de tipo de datos | La consulta fallará con un error de "Tipo de datos no coincide". |
Para buscar registros donde un campo Sí/No sea "Sí", simplemente escriba Yes o True en la fila de criterios. Para "No", use No o False.
Criterios en Campos Calculados y Validación de Datos
Aunque el enfoque principal de este artículo son los criterios de consulta, es relevante mencionar que las expresiones utilizadas en los criterios son muy similares a las que se emplean en los campos calculados de las tablas o en las reglas de validación de datos. Un campo calculado en Access le permite definir una expresión que produce un valor derivado de otros campos en la misma tabla. Por ejemplo, puede tener un campo calculado "NombreCompleto" que concatene el "Nombre" y el "Apellido" ([Nombre] + " " + [Apellido]).

Usted puede aplicar criterios directamente a estos campos calculados en sus consultas, de la misma manera que lo haría con un campo regular. Esto es útil si desea filtrar los resultados basándose en el valor resultante del cálculo.
De manera similar, las reglas de validación en Access utilizan expresiones para asegurar que los datos introducidos en un campo o registro cumplan con ciertas condiciones. Por ejemplo, una regla de validación para un campo de fecha podría ser >=Date() para asegurar que las fechas introducidas no sean del pasado. El texto de validación acompaña a estas reglas, proporcionando un mensaje útil al usuario si la entrada no es válida.
La sintaxis y los operadores que aprende al construir criterios de consulta son directamente aplicables a la creación de expresiones para campos calculados y reglas de validación, lo que refuerza la importancia de dominar la construcción de expresiones en Access.
Preguntas Frecuentes sobre Criterios en Access
- ¿Qué son los caracteres comodín y cuándo debo usarlos?
- Los caracteres comodín son símbolos especiales (como
*,?,%,_) que se utilizan en los criteriosLikepara representar uno o varios caracteres desconocidos. Son ideales cuando no se conoce la cadena exacta o se desea buscar patrones. Por ejemplo,Like "S*"encontrará cualquier cadena que empiece con 'S', mientras queLike "??r"encontrará cualquier cadena de tres caracteres que termine en 'r'. - ¿Por qué mis criterios de fecha no funcionan?
- Es un error común olvidar encerrar los valores de fecha entre signos de número (
#). Access necesita estos signos para distinguir las fechas de las cadenas de texto. Por ejemplo,#12/31/2023#es la forma correcta de referirse al 31 de diciembre de 2023 en un criterio. - ¿Cuál es la diferencia entre
Is Nully""? Is Nullse utiliza para encontrar registros donde un campo no tiene ningún valor, es decir, está completamente vacío.""(un par de comillas dobles) se usa para encontrar registros donde un campo de texto contiene una cadena de longitud cero, que es diferente de un valor nulo. Un campo nulo no tiene datos, mientras que un campo con una cadena de longitud cero tiene datos, pero esos datos son una cadena vacía.- ¿Puedo usar criterios basados en datos de otra tabla?
- Sí, pero requiere un enfoque ligeramente diferente. En lugar de simplemente referenciar el campo en la cuadrícula de diseño de la consulta, normalmente necesitará crear una subconsulta o una consulta unida que incluya la otra tabla para poder referenciar sus campos en los criterios. Los criterios se aplican a los campos presentes en la cuadrícula de diseño de la consulta actual.
- Mis criterios con AND y OR no dan los resultados esperados, ¿qué hago?
- La lógica de combinación de AND y OR puede ser confusa. Recuerde que los criterios en la misma fila se unen con AND, y los criterios en diferentes filas (usando la fila "o") se unen con OR. Si tiene dudas, imagine paréntesis:
(Criterio1 AND Criterio2) OR (Criterio3 AND Criterio4). Revise la cuadrícula de diseño cuidadosamente para asegurarse de que sus criterios están en las filas correctas para lograr la lógica deseada.
Dominar el uso de criterios en Access es una habilidad invaluable para cualquier persona que trabaje con bases de datos. Le permite refinar sus búsquedas, generar informes precisos y mantener sus datos organizados de manera eficiente. Al comprender los diferentes tipos de criterios y cómo aplicarlos a diversos tipos de datos, estará bien equipado para extraer el máximo valor de su información en Access.
Si quieres conocer otros artículos parecidos a Dominando Criterios de Texto en Consultas Access puedes visitar la categoría Cálculos.
