MySQL層疊是一種數據庫設計方法,它可以幫助我們更好地管理和組織數據。
層疊是指按照特定順序將多個表連接在一起。一個表可以稱為父表,而另一個表可以稱為子表。在層疊中,一條記錄或行在父表中只出現一次,但在子表中可以出現多次。
CREATE TABLE employee ( id INT PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE department ( id INT PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE employee_department ( employee_id INT, department_id INT, PRIMARY KEY (employee_id, department_id), FOREIGN KEY (employee_id) REFERENCES employee(id), FOREIGN KEY (department_id) REFERENCES department(id) );
在上面的代碼中,我們創建了三個表:員工表,部門表和員工部門表。員工表和部門表都有一個唯一的ID和一個名稱字段。員工部門表有兩個外鍵字段(employee_id和department_id),用于將員工和部門的記錄連接在一起,并創建一個唯一的主鍵。
在我們的層疊中,員工表是父表,部門表是子表。因為在員工表中,每個員工只出現一次。但是,一個部門可能有多個員工,所以它在員工部門表中可以出現多次。
層疊可以使查詢更加靈活。例如,我們可以輕松地查詢特定部門的所有員工或特定員工所在的所有部門。