刪除列的所有值,但我有在MS Access 2013的表看起來像這樣:MSACCESS的條件
Id Department Status FollowingDept ActualArea
1000 Thinkerers Thinking Thinkerer Thinkerer
1000 Drawers OnDrawBoard Drawers Drawers
1000 MaterialPlan To Plan MaterialPlan MaterialPlan
1000 Painters MatNeeded MaterialPlan
1000 Builders DrawsNeeded Drawers
下表給出遵循其必須通過五個部門的ID,每個部門具有至少5種不同的狀態。
每個狀態具有FollowingDept值,像*Department* Thinkerers
具有狀態MoreCoffeeNow這意味着*FollowingDept* Drawers
。
除ActualArea外的所有列都是從查詢的提要中獲取值的列。
ActualArea是expr其中我插入這樣的邏輯:
Iif(FollowingDept = Department, FollowingDept, "")
我的邏輯很簡單,如果FollowingDept和系重合,則ID的ActualArea會從FollowingDept值。
但是,正如您所見,可能會出現少數情況,其中ID與上面的示例類似,其中3個部門與FollowingDept重合。這種情況很少見,但我想爲Access增加一些優先級。
Thinkerers具有最高優先級,然後是MaterialPlan,然後是Drawers,然後是建造者,最後是Painters。因此,遵循相同的例子,在ActualArea獲得3個值之後,Access將執行另一個查詢或子查詢或其他任何內容,它將評估每個值的優先級並僅留下具有最高優先級的那個值。因此在本例中,Thinkerers獲得最高優先級,其他兩個值從ActualArea列中刪除。
請記住有超過500個不同的ID,每個ID重複5次,所以總記錄來評估將是2500
謝謝,我會按照你所說的添加一個新表格,看看它是如何發生的。實際上,假設一切順利,我將在ActualArea中提取每個ID。就像我所說的,在獲得正確的ActualArea後,有500個唯一ID每個重複5次,我將提取該記錄,以便我應該以另一個具有500個唯一ID的表結尾。感謝您的回答, – Eduardo
如果您想在一個查詢中完成所有操作,那也是可以的。我可以告訴你如何做到這一點,如果原始查詢做你想做的事情。 –