2017-07-17 63 views
0

我正在爲製造能力規劃工具創建數據庫模型。我希望能夠定義白天和工作站的容量小時數。每個項目都會有一個任務列表,這些任務將在白天爲這些工作站創建需求。我想創建一個算法,在最後一個給定結束日期後,將任務反向排定。在MySQL中建模並行操作

由於製造過程的性質,一些任務與其他任務是平行的。我們可以有3個或更多的活動並行。我需要一種方法來定義哪些任務與其他任務並行。

MySQL在他們的EER編輯器中有一個「m有n」的關係。這是建立這種關係的正確方法嗎?

回答

0

我不認爲你需要定義什麼活動是並行的。只要您爲每個任務定義Begin DateEnd Date,就可以計算出彼此並行的活動。

所以,如果你有一個單一的活動,你可以計算日期範圍是什麼其他活動並行的:

SELECT activity.* 
FROM activity 
WHERE activity.begin_date < @this_activity_end_date 
    AND activity.end_date > @this_activity_begin_date 
+0

的日期是動態的。最終用戶將在上一次操作中輸入截止日期,其餘日期根據前輩的持續時間計算 –

+0

然後您有親子關係,但這與平行問題不同。你可以用觸發器或創建一個視圖來解決這個問題。 –