2017-06-11 38 views
0

我是Access的新手,我有一張病人表,我有三個不同的可由護士完成的任務領域(他們的名字在這些領域) 。這並不總是同一名護士執行任務,但有時是這樣。我希望獲得護士見過的病人總數,而不將每次互動作爲單獨的聯繫實例。每次記錄一個姓名的記錄作爲一個實例

計算名稱出現在一列中的總次數很容易。但是,無論護士姓名出現多少次,如果在這三個字段中的任何一處提及護士姓名,我都希望每次記錄一次。

有沒有辦法做到這一點?我一直在尋找無處尋找這個問題的答案。數據如何顯示。每位護士都來自連接到另一張桌子的下拉框。

Patient Task1 Task2 Task3 Task4 
Jones  Bill Jack Ruby Bill 
Smith  Ruby Ivan Raul Ted 
Barns  Ted  James Rick Ted 
Jackson Ted  Phil Ruby Bill 

在此先感謝!

+0

您不提供可幫助任何人幫助您的數據結構或樣本數據的信息。 –

+0

更新你的問題,並添加一個適當的數據樣本和預期的結果,請 – scaisEdge

+0

對不起。我剛剛添加了示例數據。 –

回答

1

您展示4個任務領域,而不是3

一種方法是建立一個UNION查詢來重新組織數據更規範化的結構。

這個UNION將防止病人和護士的重複對。可以通過包含任務標識符字段或UNION ALL來強制重複對,但不需要它們。

SELECT Patient, Task1 As Nurse FROM tablename 
UNION SELECT Patient, Task2 FROM tablename 
UNION SELECT Patient, Task3 FROM tablename 
UNION SELECT Patient, Task4 FROM tablename; 

現在在聚合(GROUP BY)查詢中使用該UNION查詢。

相關問題