Perché una tabella separata per questo. Perché non creare semplicemente un BIT/Boolean campo dire IsMedical e impostalo su TRUE per il personale medico in employee tabella come
/* Defines a generic employee */
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
IsMedical BIT(1)
);
In questo modo, dì se vuoi ottenere tutti i dipendenti medici da Employee tavolo; dovrai solo fare un singolo filtro in WHERE condizione che dice WHERE IsMedical = true . Considerando che, se vai da un tavolo separato, dovrai eseguire un INNER JOIN con medical_employees e employees tabella che credo sarebbe più costosa e non necessaria.