queryLab · software_de_entrenamiento en espera
// diseño · esquema

[▦] Esquema de la base HR

El modelo relacional de entrenamiento: 7 tablas, ~200 filas relacionadas.

Esta es la base de datos de práctica que usan todas las consolas, inspirada en el clásico esquema HR de Oracle. Las relaciones se establecen por llaves foráneas (FK) que apuntan a llaves primarias (PK). Nota la relación recursiva en employees: manager_id apunta a otro employee_id de la misma tabla (por eso existen los self-joins).

regions4 filas

  • region_idINTEGER
  • region_nameTEXT

countries25 filas

  • country_idTEXT
  • country_nameTEXT
  • region_idINTEGER

locations23 filas

  • location_idINTEGER
  • street_addressTEXT
  • cityTEXT
  • country_idTEXT

jobs19 filas

  • job_idTEXT
  • job_titleTEXT
  • min_salaryINTEGER
  • max_salaryINTEGER

departments11 filas

  • department_idINTEGER
  • department_nameTEXT
  • manager_idINTEGER
  • location_idINTEGER

employees102 filas

  • employee_idINTEGER
  • first_nameTEXT
  • last_nameTEXT
  • emailTEXT
  • hire_dateTEXT
  • job_idTEXT
  • salaryINTEGER
  • commission_pctREAL
  • manager_idINTEGER
  • department_idINTEGER

job_history10 filas

  • employee_idINTEGER
  • start_dateTEXT
  • end_dateTEXT
  • job_idTEXT
  • department_idINTEGER

Relaciones clave

· employees.department_id → departments.department_id (cada empleado en un departamento)

· employees.job_id → jobs.job_id (cada empleado tiene un cargo)

· employees.manager_id → employees.employee_id (relación recursiva jefe→empleado)

· departments.location_id → locations.location_id → countries.country_id → regions.region_id