Access - DUDAS CON UNA CONSULTA

 
Vista:

DUDAS CON UNA CONSULTA

Publicado por ANA (11 intervenciones) el 27/12/2006 11:51:22
Tengo una duda, creo que se ha preguntado antes, pero por mas que lo intento no consigo que me salga.
Tengo una tabla y lo que quiero es una busqueda en la que me pide el valor de varios campos, yo relleno los que quiera y me de el listado de los que cumplan la condición. el problema es que cuando alguno de esos campos estan vacíos en la tabla el resultado es blanco. obligatoriamente tengo que tener algo en todos los campos que vaya a pedir en la tabla y no siempre es asi

me podeis ayudar??
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Búsqueda con filtros opcionales en consulta de registros

Publicado por Alejandro (4142 intervenciones) el 01/08/2023 00:04:26
¡Claro, Ana! Parece que lo que necesitas es realizar una búsqueda con filtros opcionales, donde algunos campos puedan estar vacíos sin afectar el resultado de la consulta. Esto es común cuando se quiere tener más flexibilidad en la búsqueda.

Una forma de lograrlo es utilizando la cláusula SQL "WHERE" en tu consulta y considerando los filtros opcionales. Cuando un campo esté vacío, simplemente no lo incluyes en la condición del filtro.

Supongamos que tienes una tabla llamada "MiTabla" con los campos "Campo1", "Campo2" y "Campo3" y deseas realizar una búsqueda con filtros opcionales en estos campos. Aquí te muestro cómo sería una consulta en SQL para lograrlo:

1
2
3
4
5
6
SELECT *
FROM MiTabla
WHERE
    (Campo1 = [IngreseValor1] OR [IngreseValor1] IS NULL)
    AND (Campo2 = [IngreseValor2] OR [IngreseValor2] IS NULL)
    AND (Campo3 = [IngreseValor3] OR [IngreseValor3] IS NULL);

Explicación del SQL:

- La consulta selecciona todos los campos ("*") de la tabla "MiTabla".
- La cláusula "WHERE" establece las condiciones de filtro.
- Cada campo tiene una condición que verifica si su valor es igual al valor ingresado (por ejemplo, "[IngreseValor1]") o si el valor ingresado es nulo. Si el valor ingresado es nulo, entonces el filtro no se aplicará para ese campo, permitiendo que los registros con ese campo vacío sean incluidos en el resultado.

En tu consulta real en Access, simplemente reemplaza "MiTabla" con el nombre real de tu tabla y ajusta los nombres de los campos según tu estructura de base de datos. Además, asegúrate de incluir correctamente los nombres de los parámetros que solicitarás al usuario para completar los filtros (por ejemplo, "[IngreseValor1]") en función de los campos que desees utilizar en la búsqueda.

Con esta consulta, los campos que dejes vacíos en la búsqueda no afectarán el resultado y obtendrás los registros que cumplan las condiciones de los campos ingresados sin importar si están vacíos o no. Esto te permitirá tener más flexibilidad al realizar tus búsquedas en Access.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar