You are on page 1of 4

IF EXISTS (SELECT name from sys.

databases where name='Employees')


DROP DATABASE Employees
GO
CREATE DATABASE Employees
GO
USE Employees
GO
--- create department table
IF EXISTS (SELECT name from sys.tables where name='departments')
DROP DATABASE departments
CREATE TABLE departments
(
dept_no char(4) not null,
dept_name varchar(40) not null,
constraint pkdepartments primary key(dept_no)
)
--- create employee table
IF EXISTS (SELECT name from sys.tables where name='employee')
DROP DATABASE employee
CREATE TABLE employee
(
emp_no int not null,
birth_date datetime not null,
first_name varchar(14) not null,
last_name varchar(16) not null,
gender char(1),
hire_date datetime not null,
constraint pkEmployee primary key(emp_no),
constraint ckgender CHECK (gender in('M','F'))
)
--- create dept_emp table
IF EXISTS (SELECT name from sys.tables where name='dept_emp')
DROP DATABASE dept_emp
CREATE TABLE dept_emp
(
emp_no int not null,
dept_no char(4) not null,
from_date datetime not null,
to_date datetime not null,
constraint pkdept_emp primary key(emp_no),
constraint fkdept_emp foreign key(emp_no) references employee(emp_no),
constraint fkdept_departments foreign key(dept_no) references department
s(dept_no)
)
--- create table salaries
IF EXISTS (SELECT name from sys.tables where name='salaries')
DROP DATABASE salaries
CREATE TABLE salaries
(
emp_no int not null,
salary int not null,
from_date datetime not null,
to_date datetime not null,
constraint pksalaries primary key(form_date),
constraint fksalariesemployee foreign key(emp_no) references employee(em
p_no)

)
--- create dept_manager table
IF EXISTS (SELECT name from sys.tables where name='dept_manager')
DROP DATABASE dept_manager
CREATE TABLE dept_manager
(
dept_no char(4) not null,
emp_no int not null,
from_date datetime not null,
to_date datetime not null,
constraint pkdept_manager primary key(dept_no),
constraint fkdept_manager foreign key(emp_no) references employee(emp_no
),
constraint fkdept_managerdepartments foreign key(dept_no) references dep
artments(dept_no)
)
--- create titles table
IF EXISTS (SELECT name from sys.tables where name='titles')
DROP DATABASE titles
CREATE TABLE titles
(
emp_no int not null,
title varchar(50) not null,
from_date datetime not null,
to_date datetime not null,
constraint pktitles primary key (title, form_date),
constraint fktitleemployee foreign key (emp_no) references employee(emp_
no)
)
--- insert values to department
GO
DELETE FROM departments
insert departments
values('111','Computer')
insert departments
values('12','Electronics')
insert departments
values('13','Electrical')
insert departments
values('14','Mechanical')
insert departments
values('15','Indusrial')
GO
SELECT * FROM departments
--- insert values employee
GO
DELETE FROM employee
insert employee
values('1','1995-01-09','Patricia Gayle','Marte','F','2014-08-25')
insert employee
values('2','1991-07-19','Leeroy','Castelo','M','2012-09-15')
insert employee
values('3','1994-09-22','Raffy','David','M','2011-04-21')
insert employee

values('4','1995-05-17','Iris','Antonio','F','2014-09-17')
insert employee
values('5','1993-05-12','Kelly','Mendez','F','2014-05-02')
insert employee
values('6','1994-06-14','Mara','Olivar','F','2014-08-10')
insert employee
values('7','1995-05-22','Sherlock','Holmes','M','2014-04-02')
insert employee
values('8','1993-02-12','John','Watson','M','2014-09-01')
insert employee
values('9','1998-07-20','Jevitico','Banzon','M','2014-09-04')
insert employee
values('10','1991-07-14','Matthew','Gomez','M','2014-04-04')
insert employee
values('11','1997-04-06','Ted','Mosby','M','2014-10-08')
insert employee
values('12','1996-10-11','Joanna','Mejia','F','2014-02-21')
insert employee
values('13','1994-08-22','Aaron','Tunguia','M','2014-05-03')
insert employee
values('14','1995-04-13','Hannah','Mucho','F','2014-04-03')
insert employee
values('15','1995-03-14','Christian','Victor','M','2014-04-07')
insert employee
values('16','1994-11-26','Earl','Tolentino','M','2014-05-07')
insert employee
values('17','1997-03-26','Robin','Cinco','F','2014-09-21')
insert employee
values('18','1994-07-23','Cheska','Munoz','F','2014-06-22')
insert employee
values('19','1995-08-22','Nicolle','Mangaba','F','2014-07-26')
insert employee
values('20','1995-01-29','Johann','Leonzon','M','2014-01-29')
GO
SELECT * FROM employee
--- insert values titles
GO
DELETE FROM titles
insert titles
values('1','Software Engineer','2014-04-14','2007-01-29')
insert titles
values('2','Electonics Engineer','2014-03-09','2004-03-24')
insert titles
values('3','Electrical Engineer','2014-08-25','2013-08-12')
insert titles
values('4','Mechanical Engineer','2012-03-14','2008-07-03')
insert titles
values('5','Industrial Engineer','2014-01-15','2011-02-07')
GO
SELECT * FROM titles
--- insert values in dept_manager
GO
DELETE FROM dept_manager
insert dept_manager
values('11','1','2012-03-11','2014-12-12')
insert dept_manager
values('12','2','2012-09-27','2014-09-07')

insert dept_manager
values('13','3','2012-07-05','2014-05-12')
insert dept_manager
values('14','4','2012-05-07','2014-09-08')
insert dept_manager
values('15','5','2012-12-12','2014-11-13')
GO
SELECT * FROM dept_manager
--- insert values in salary table
GO
DELETE FROM salaries
insert salaries
values ('1','50000','2014-01-01','2014-02-01')
insert salaries
values ('2','60000','2014-05-01','2014-06-01')
insert salaries
values ('3','70000','2014-04-01','2014-05-30')
insert salaries
values ('4','30000','2014-06-01','2014-07-30')
insert salaries
values ('5','60000','2014-08-01','2014-09-30')
GO
SELECT * FROM salaries
--- total number of employee per department
select d.dept_name as 'department', count(de.emp_no) as 'Total number of employe
es'
from departments d, dept_emp de
where d.dept_no=de.dept_no
group by dept_name
--- total number of employee per manager
select dm.emp_no as 'Manager', count(e.emp.no) as 'Total number of employees'
from dept_manager dm, employee e
where dm.emp_no = e.emp_no
---- employee number, name, birthdate, gender, hire_date, salary, title, depar
tment, manager
select e.emp_no, e.firsrt_name, e.last_name, e.birthdate, e.gender,
e.hire_date
s.salary, t.title, d.dept_name, dm.emp_no
from employee e, title t, salaries s, dept_manager dm, departments d
where e.emp_no = t.emp_no and e.emp_no = dm.emp_no = dm.dept_name

You might also like