Access - Unificar consultas en una

   
Vista:

Unificar consultas en una

Publicado por Chus (16 intervenciones) el 02/03/2018 13:36:19
Tengo una tabla con varios campos y quiero hacer una consulta en sql para modificar desde VB el origen de datos de un control combinado, según sea el usuario de la BD.

La idea es seleccionar determinados registros donde el campo contiene la letra X (usuario de BD)
Esto es fácil.
1
2
3
SELECT Tabla.*
FROM Tabla
WHERE (((Tabla.Campo4) Like "*X*"));

Y que de ésta selección ver en el combo el Campo1 sin repetir.
1
2
3
SELECT Tabla.Campo1
FROM Tabla
GROUP BY Tabla.[Campo1];

Si lo hago con una consulta intermedia creo la consulta Selección:
1
2
3
SELECT Tabla.*
FROM Tabla
WHERE (((Tabla.Campo4) Like "*X*"));

Y después en el origen del registro del combo pongo
1
2
3
SELECT Seleccion.[Campo1]
FROM Seleccion
GROUP BY Seleccion.[ Campo1];
*Con las adaptaciones oportunas para VB

Así sí me funciona, es decir me aparecen 105 registros agrupados por el Campo 1 y que contiene en el Campo4 a X


Se podría crear una consulta sin tener que tener en la BD la consulta intermedia, en éste caso Selección?

He probado de varias formas y no me sale.
Muchas 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

Unificar consultas en una

Publicado por Anonimo (807 intervenciones) el 02/03/2018 17:50:54
¿Has intentado algo con las propiedades de la consulta inicial?

Entre las propiedades hay una que se titula 'Valores únicos' con solo dos posibilidades Sí/No .....

También se podría generar ese resultado agrupando y filtrando en una única consulta (y el generador grafico lo permite, no hace falta hacer ninguna 'travesura').
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

Unificar consultas en una

Publicado por Chus (16 intervenciones) el 03/03/2018 20:26:14
Muchas gracias........mira que era fácil.
En sql que es lo que busco es poner DISTINCT

Así funciona
1
2
3
SELECT DISTINCT Tabla.Campo1, Tabla.Campo4
FROM Tabla
WHERE (((Tabla.Campo4) Like "*X*"));

Sin embargo con
1
2
3
SELECT DISTINC Tabla.*
FROM Tabla
WHERE (((Tabla.Campo4) Like "*X*"));
no funciona supongo que es porque tiene demasiados campos.

Muchas gracias como es para el origen de un campo combinado me sirve perfectamente.
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
Revisar política de publicidad