首頁>Database>source

鉴於一些規範,我需要為組织設計資料庫.其中一部分与區域有關.在組织中,存在不同的區域,每个區域都有一个老板,並且還有一个員工作為所有區域的老板.我的問题是我應该如何指出哪个員工是所有领域的老板。

   | employee_id |    name    |
    |      1      |    Mark    |
    |      2      |    Carol   |
    |      3      |    Adam    |
    |      4      |    Andy    |

    | area_id |    area_name    | manager |
    |    1    |    Chemistry    |    2    |
    |    2    |    Electronics  |    4    |
    |    3    |    Medicine     |    3    |
    |    4    |      ALL        |    1    |

目前,發生在我身上的是在" AREA"關係中建立一个稱為" ALL"的事件,以指示所有區域的頭部,但是我不確定這是最好的方法還是正確的方法 做吧.還有其他想法吗?

最新回復
  • 6月前
    1 #

    可以將" ALL"值作為 Area 但最好添加第三张表作為鏈接表,稱為 EmployeeArea,這樣更靈活。 代替。

    EmployeeArea 桌子是可以存放 area_id的地方 和 employee_id (作為 manager_id ),以表示表格之間的技術上多對多關係.然後所有區域的老板都会在每个 Area那裏有一个記錄

    這是對設計的更規範化,並且如果出於某種原因需要所有區域的多个老板,或者在特殊情况下需要多个員工負责同一區域,則這種靈活性更加靈活。

  • docker:使用db2inst1執行db2命令列時出現授權錯誤
  • mysql:使用SQL在表中輸入精確值