No estoy seguro de si esto es posible hacerlo en Access; He estado buscando en Google foros y todavía no he encontrado una solución que funcione...
Básicamente, hay una lista de pacientes que proporcionan múltiples muestras de sangre en diferentes momentos. Cada muestra se recoge y registra con un código de barras de rack. Cada código de barras de gradilla (muestra) tiene varios códigos de barras de tubos (partes de la muestra)
Tengo una base de datos que tiene tres tablas.
Información de identificación: información del paciente (ID del paciente, información demográfica)
códigos de barras: una lista de todas las muestras recolectadas para cualquier paciente (código de barras del bastidor; código de barras del tubo a; código de barras del tubo b)
Asignación de códigos de barras: guarde los códigos de barras de la tabla de códigos de barras a medida que se asignan a cada paciente. (ID del paciente, código de barras en rack 1, código de barras en rack 2) El código de barras en rack 1 es la muestra recolectada en el punto temporal 1 y el código de barras en rack 2 es una muestra recolectada para el mismo paciente en el punto temporal 2. El código de barras en rack 1 y el código de barras en rack 2 se pueden utilizar como "código de barras en rack". " en la tabla de códigos de barras.
Tengo una unión interna entre la información de identificación y las asignaciones de códigos de barras con la identificación del paciente. Tengo 2 uniones exteriores entre códigos de barras y asignaciones de códigos de barras. rackbarcode de la tabla de códigos de barras está vinculado tanto a RackBarcode 1 como a RackBarcode 2 en la tabla de asignación de códigos de barras.
Quiero conectar la información de identificación del paciente a los códigos de barras apropiados, para lo cual uso la tabla de asignación de códigos de barras. Puede que haya una mejor manera de hacerlo y estoy abierto a sugerencias.
Mi objetivo final es ejecutar una consulta que me muestre toda la información de la muestra por paciente:
ID del paciente; Código de barras del estante 1; Código de barras del tubo A1 Código de barras del tubo B1; Código de barras 2; Código de barras del tubo A2; Código de barras del tubo B2
Respuesta1
Según su descripción de la estructura de su base de datos, parece que necesita unirse a dos referencias de la Barcodes
tabla, una referencia para cada una rackbarcode
.
Por ejemplo:
select
ba.[patient id],
ba.[rackbarcode 1],
b1.[tube barcode a],
b1.[tube barcode b],
ba.[rackbarcode 2],
b2.[tube barcode a],
b2.[tube barcode b]
from
(
[barcode assignment] ba inner join barcodes b1 on
ba.[rackbarcode 1] = b1.rackbarcode
)
inner join barcodes b2 on
ba.[rackbarcode 2] = b2.rackbarcode
Los espacios en los nombres de los campos en su pregunta no eran consistentes y usted hizo referencia a los mismos campos usando nombres diferentes en varios puntos de su pregunta, por lo tanto, no puedo garantizar que haya usado los nombres de campo correctos en el ejemplo anterior.
Tenga en cuenta que ba
y son simplemente alias y no es necesario cambiarlos.b1
b2