Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Tabele, których jedynym celem jest określenie podzbioru innej tabeli

Po co do tego osobny stół. Dlaczego nie po prostu utworzyć BIT/Boolean pole powiedz IsMedical i ustaw ją na TRUE dla pracowników medycznych w employee tabela jak

/* Defines a generic employee */
CREATE TABLE employees (
    id      INT PRIMARY KEY AUTO_INCREMENT,
    name    VARCHAR(100) NOT NULL,
    IsMedical BIT(1)
);

W ten sposób powiedz, czy chcesz uzyskać wszystkich pracowników medycznych od Employee stół; wystarczy wykonać pojedynczy filtr w WHERE warunek mówiący WHERE IsMedical = true . Natomiast jeśli przejdziesz przez osobną tabelę, będziesz musiał wykonać INNER JOIN z medical_employees i employees stół, który moim zdaniem byłby droższy i niepotrzebny.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL CURRENT_TIMESTAMP podczas tworzenia i aktualizacji

  2. Jak przeprowadzić migrację MySQL z Amazon EC2 do lokalnego centrum danych bez przestojów?

  3. Kompleksowy przewodnik dotyczący korzystania z MySQL

  4. Indeks (bazujący na zero) musi być większy lub równy zero

  5. Jak wyłączyć sprawdzanie poprawności hasła mysql?