Больничная база данных: обнаружение случаев номеров карт здоровья, появляющихся в более чем одной медицинской карте - PullRequest
0 голосов
/ 19 октября 2018

В Онтарио каждому жителю присваивается один номер карты здоровья (HCN).В нашей больнице пациентам присваивается номер медицинской карты (MRN).

Я хочу найти случаи, когда один HCN появляется в нескольких MRN (это может быть вызвано тем, что клерки создают новую MRN, даже если она уже есть).существует для пациента / HCN).

Я хочу, чтобы выходные данные перечисляли только один пример каждого «дублированного» созданного MRN с другими данными, чтобы можно было принять правильные и быстрые решения о том, объединять ли записиили нет (например: дата рождения, имя, поля адреса, адрес электронной почты).

У меня есть следующие таблицы:

  • список MRN, имя, дата рождения
  • aтаблица, которая связывает MRN с «уникальным номером записи» (Urn), используемым в следующих таблицах
  • список Urn и HCN
  • список Urn и адрес пациента

Я использую Microsoft Access и установил отношения.Я пробовал другой код, но мог бы помочь.Я все еще изучаю SQL и пока не могу разобраться с этим.

Это базовый код, который генерирует Access:

SELECT [HCN, Mri Urn].[Edited HCN], [MRN, Name, DOB].[Medical Record],
   [MRN, Name, DOB].Name, [MRN, Name, DOB].Birthdate, 
   [Pat Address, Adm Urn].[Pat City], [Pat Address, Adm Urn].[Pat Street],
   [Pat Address, Adm Urn].[Pat Street2], [Pat Address, Adm Urn].[Pat Email],
   [Pat Address, Adm Urn].[Pat Home Phone]
FROM [Pat Address, Adm Urn] 
INNER JOIN ([MRN, Name, DOB] 
INNER JOIN ([HCN, Mri Urn] 
INNER JOIN [ADM's Mri Urn-Adm Urn link] 
   ON [HCN, Mri Urn].Urn = [ADM's Mri Urn-Adm Urn link].[Mri Urn]) 
   ON [MRN, Name, DOB].[Medical Record] = [ADM's Mri Urn-Adm Urn link].[Mri Urn]) 
   ON [Pat Address, Adm Urn].Urn = [ADM's Mri Urn-Adm Urn link].Urn
ORDER BY [HCN, Mri Urn].[Edited HCN], 
   [MRN, Name, DOB].[Medical Record], 
   [MRN, Name, DOB].Name, 
   [MRN, Name, DOB].Birthdate, 
   [Pat Address, Adm Urn].[Pat City], 
   [Pat Address, Adm Urn].[Pat Street], 
   [Pat Address, Adm Urn].[Pat Street2], 
   [Pat Address, Adm Urn].[Pat Email], 
   [Pat Address, Adm Urn].[Pat Home Phone];

1 Ответ

0 голосов
/ 20 октября 2018

Ваши таблицы довольно трудны для отслеживания из-за их имен :) Я не уверен, что это именно то, что вы имели в виду (отсутствие данных образца затрудняет понимание):

SELECT 
[HCN, Mri Urn].[Edited HCN],
       [MRN, Name, DOB].[Medical Record],
       [MRN, Name, DOB].Name,
       [MRN, Name, DOB].Birthdate,
       [Pat Address, Adm Urn].[Pat City],
       [Pat Address, Adm Urn].[Pat Street],
       [Pat Address, Adm Urn].[Pat Street2],
       [Pat Address, Adm Urn].[Pat Email],
       [Pat Address, Adm Urn].[Pat Home Phone]
FROM [Pat Address, Adm Urn]
    INNER JOIN([MRN, Name, DOB]
    INNER JOIN([HCN, Mri Urn]
    INNER JOIN [ADM's Mri Urn-Adm Urn link]
        ON [HCN, Mri Urn].Urn = [ADM's Mri Urn-Adm Urn link].[Mri Urn])
        ON [MRN, Name, DOB].[Medical Record] = [ADM's Mri Urn-Adm Urn link].[Mri Urn])
        ON [Pat Address, Adm Urn].Urn = [ADM's Mri Urn-Adm Urn link].Urn
where  [ADM's Mri Urn-Adm Urn link].Urn in 
(select urn from  [ADM's Mri Urn-Adm Urn link]
group by URN having count(*) > 1)
ORDER BY [HCN, Mri Urn].[Edited HCN],
         [MRN, Name, DOB].[Medical Record],
         [MRN, Name, DOB].Name,
         [MRN, Name, DOB].Birthdate,
         [Pat Address, Adm Urn].[Pat City],
         [Pat Address, Adm Urn].[Pat Street],
         [Pat Address, Adm Urn].[Pat Street2],
         [Pat Address, Adm Urn].[Pat Email],
         [Pat Address, Adm Urn].[Pat Home Phone];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...