Cómo verificar los datos de dos tablas de Access?

Debo comparar la información de dos sistemas(uno que se dejo de usar contra el nuevo), por lo cual tengo dos tablas con información de citas de clientes y necesito saber lo siguiente:

  1. Los clientes que se les cambió la fecha y hora de la cita.
  2. Las citas que en ambas tablas estén igual.
  3. Los clientes que se les cambió la hora de la cita(ya que algunos quedaron para el mismo día solo que a diferente hora).

  • Los pacientes que se les cambio la fecha y hora de la cita.  

Para este punto hice una consulta con las dos tablas y solamente relacioné la identificación de ambas tablas y en criterios coloque : <>[tabla2].[Fecha Cita](esperando que me muestre las citas que están en una fecha diferente).

Los casos en donde el cliente solamente tiene una cita en ambas tablas, si me los muestra bien, pero cuando tienen más de una cita, los resultados de la consulta no son reales.

Por ejemplo existe un cliente que tiene 2 citas en ambas tablas (03/06/2021 y 29/12/2021), pero en la consulta sucede lo siguiente:

                 ID                          Nombre                        fecha Origen            Fecha Destino

Con lo que he investigado no logro resolverlo.

La estructura de la consulta es la siguiente:

(En propiedades de la combinación esta en la opción 1, Incluir sola las filas donde los campos combinados de ambas tablas sean iguales)

  • Las citas que en ambas tablas estén igual.                                                                                                     Para este punto hice una consulta con las dos tablas y relacioné la identificación, la fecha de cita y la hora de cita.
  • En propiedades de la combinación esta en la opción 1, Incluir sola las filas donde los campos combinados de ambas tablas sean iguales
  • Con este punto creo que los resultados están bien, pero igual me gustaría que algún experto me indique si la combinación es correcta o estoy omitiendo algo.

  • Los pacientes que se les cambio la hora de la cita(ya que algunos quedaron para el mismo día solo que a diferente hora).

 Para este punto hice una consulta con las dos tablas, relacioné la identificación y la fecha de cita de ambas tablas y en criterios coloque : <>[tabla2].[hora_2](esperando que me muestre las citas que están a una hora diferente).

Con este punto creo que también los resultados están bien, pero igual me gustaría que algún experto me indique si la combinación es correcta o estoy omitiendo algo

2 respuestas

Respuesta
2

¿Podrías poner una imagen, aunque sea con datos inventados de ambas tablas?. La verdad, me he perdido. Porque para saber los que están en una tabla y no están en otra puedes crear, con el asistente, una consulta de búsqueda de no coincidentes, pero me gustaría ver los registros de ambas tablas

¡Gracias Julian

En ambas tablas los campos son los mismos (identificación, fecha cita y hora cita) y son los que estoy tratando de relacionar.

La  consulta de búsqueda de no coincidentes, no me esta funcionando para esta parte que necesito, ya lo había usado para verificar si hacían falta clientes en la tabla2 y me dio los resultados correctos.

Ahora lo que necesito es saber cuales clientes cambiaron de fecha o de hora

Si tengo una tabla llamada Pacientes, donde tienen una fecha de cita

Y como dices hay otra tabla donde a algunos se les ha cambiado las fechas( para el ejemplo a Alfreds y a Around

Construyo una consulta como

Cuando la abro, sólo me muestra aquellos registro de la tabla Copia a los que se les ha cambiado la fecha con respecto a la tabla Pacientes

¡Gracias! 

Al principio esa fue la consulta que hice y al ejecutarla no mostraba ni un solo resultado.

Hace un momento la volví a realizar desde cero y no me muestra nada, cuando en realidad me debería mostrar un aproximado de 1000 citas que cambiaron de fecha.

No entiendo porqué no se muestra nada, los campos en ambas tablas tienen el mismo formato.

Intenté, haciendo ese tipo de consulta pero invirtiendo el orden de las tablas ('pacientes' no coinciden con 'copia') me muestra solamente 34 registros(las fechas originales) y  no se acerca a la cantidad real.

Lo único que se me ocurre es que hagas una copia, con unos cuantos registros inventados y me la mandes a [email protected] y la miro.

Si lo haces, en el asunto del mensaje pon tu alias Rmendez, ya que si no sé quien me escribe ni los abro.

Respuesta

Se puede hacer de varias formas. Si quiere envíeme la base datos con datos ficticios en formato .RAR o .ZIP a [email protected] favor anotar en el asunto la consulta

¡Gracias! 

Ya se la envié al correo, muchas gracias por la ayuda!

Es difícil hacerlo con SQL porque los ID de las tablas no coinciden, por ejemplo, en la primera tabla tengo el registro con Identificacion=24007003 tiene los ID 728 y 3398, en la segunda tabla los ID 723 y 3396. Veamos esta gráfica

Por esto al realizar la consulta aparecen 4 registros cuando realmente se cambio solo una cita, la del 29/12/2021 de hora 02 al 30/12/021 hora 11. En conclusión creo que la única forma es hacerlo con código mediante DAO o ADO del tal forma compare el primer registro de la tabla 1 con el primer registro de la tabla 2 y anexar esta información a una tabla auxiliar.

Al hacer la consulta el resultado es erróneo, veámoslo

:

Esos ID, son los que access crea automáticamente al al cargar un excel en una tabla de access. 

El campo importante es "identificación", que es con el que estaba tratando hacer las relaciones. 

Por lo que le entiendo, entonces si elimino esos campos ID, ya se podrían mostrar bien los datos en la consulta que previamente había realizado 

Ya entiendo no hay necesidad de eliminar los ID, trataré en lo posible de hacerlo por código.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas