1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập My SQL

5 2,4K 36
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài Tập My SQL
Trường học Standard University
Chuyên ngành Database Management
Thể loại Bài tập
Năm xuất bản 2023
Thành phố Hanoi
Định dạng
Số trang 5
Dung lượng 58,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài tập My SQL

Trang 1

1.Tạo cơ sở dữ liệu HumanResources gồm các bảng sau :

a.Bảng Employee

Tên trường Mô tả

Emp_Id (int, auto increment) Id Nhân viên

First_Name (varchar 20) Tên nhân viên

Last_Name (varchar 30) Họ nhân viên

Age (int) Tuổi nhân viên

Dept_Id (int, references Department(Dept_Id )) Id Phòng ban

BasicSal (int) Lương cơ bản

b Bảng Department

Tên trường Mô tả

Dept_Id (int, auto increment) Id Phòng ban

Name (varchar 20) Tên Phòng ban

DeptHeadId (int) Id Trưởng phòng

c Bảng Project

Tên trường Mô tả

Pro_id (int, auto increment ) Id dự án

Dept_Id (int, references Department(Dept_Id )) Tên phòng làm dự án

Pro_Name (varchar 50) Tên dự án

Start_Date (datetime) Ngày bắt đầu

End_Date (datetime) Ngày kết thúc

2 Tạo quan hệ và nhập dữ liệu cho các bảng, mỗi bảng 10 bản ghi

3 Sử dụng join và các hàm cơ bản để thực hiện các truy vấn sau

a Hiển thị tên nhân viên trong mỗi phòng

b Hiển thị tên nhân viên cho mỗi dự án

c Tìm xem phòng nào có nhân viên hưởng lương cao nhất

d Tìm tên các dự án nào có nhiều nhân viên thực hiện nhất

e Tìm tên các dự án nào có mức trung bình lương của các nhân viên thấp nhất

f Hiển thị tất cả các trưởng phòng và tên phòng tương ứng

g Đếm số ngày thực thi của mỗi dự án

h.Hiển thị số tuổi trung bình của tất cả các nhân viên

i Hiển thị số tuổi trung bình của nhân viên mỗi phòng

k Ghép họ và tên mỗi nhân viên để hiển thị tên hoàn chỉnh

l Tìm xem phòng nào đã thực hiện nhiều dự án nhất

Trang 2

m Thống kê số ngày thực thi dự án của mỗi nhân viên

n Thống kê mức lương trung bình của các trưởng phòng

-BÀI

GIẢI -1.Tạo CSDL

Database: `humanresources`

-CREATE TABLE `department` (

`dept_id` int(11) NOT NULL default '0',

`name` varchar(20) default NULL,

`deptheadld` int(11) default NULL,

PRIMARY KEY (`dept_id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Dumping data for table `department`

INSERT INTO `department` (`dept_id`, `name`, `deptheadld`) VALUES

(3, 'Phong Nhan Su', 334),

(2, 'Phong Kinh Doanh', 223),

(1, 'Phong Giam Doc', 112),

(4, 'Phong Ky Thuat', 445),

(5, 'Phong Hanh Chinh', 556);

- Table structure for table `employee`

CREATE TABLE `employee` (

`emp_id` int(11) NOT NULL default '0',

`first_name` varchar(20) default NULL,

`last_name` varchar(30) default NULL,

`age` int(11) default NULL,

`dept_id` int(11) default NULL,

`basicsal` int(11) default NULL,

Trang 3

PRIMARY KEY (`emp_id`),

KEY `dept_id` (`dept_id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Dumping data for table `employee`

INSERT INTO `employee` (`emp_id`, `first_name`, `last_name`, `age`, `dept_id`, `basicsal`) VALUES

(1, 'Quan', 'Hoang', 23, 1, 3000000),

(2, 'Anh', 'Hoang', 25, 2, 4000000),

(3, 'Cuong', 'Nguyen', 20, 3, 3000000),

(4, 'Huyen', 'Nguyen', 23, 4, 3500000),

(5, 'Hang', 'Nguyen', 24, 5, 200000),

(6, 'Khiem', 'Tran', 26, 5, 2500000),

(7, 'Thao', 'Nguyen', 19, 3, 3500000),

(8, 'Chinh', 'Pham', 24, 2, 4000000),

(9, 'Viet', 'Le', 23, 1, 3000000),

(10, 'Hai', 'Ly', 28, 4, 3000000),

(11, 'Tuan ', 'NA', 27, 1, 5000000);

- Table structure for table `project`

CREATE TABLE `project` (

`pro_id` int(11) NOT NULL default '0',

`dept_id` int(11) default NULL,

`pro_name` varchar(50) default NULL,

`start_date` datetime default NULL,

`end_date` datetime default NULL,

PRIMARY KEY (`pro_id`),

KEY `dept_id` (`dept_id`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Dumping data for table `project`

INSERT INTO `project` (`pro_id`, `dept_id`, `pro_name`, `start_date`, `end_date`) VALUES

Trang 4

(2, 2, 'Web ban DTDD', '2008-11-21 02:28:11', '2008-11-27 02:28:11'),

(1, 1, 'Quan ly ban hang', '2008-11-21 02:26:21', '2008-11-30 02:26:39'),

(3, 3, 'Joomla', '2008-11-22 05:56:11', '2008-11-29 05:56:11');

-a Hiển thị tên nhân viên trong mỗi phòng

select first_name,name from employee inner join department on

employee.dept_id=department.dept_id ;

+ -+ -+

| first_name | name |

+ -+ -+

| Cuong | Phong Nhan Su |

| Thao | Phong Nhan Su |

| Anh | Phong Kinh Doanh |

| Chinh | Phong Kinh Doanh |

| Quan | Phong Giam Doc |

| Viet | Phong Giam Doc |

| Tuan | Phong Giam Doc |

| Huyen | Phong Ky Thuat |

| Hai | Phong Ky Thuat |

| Hang | Phong Hanh Chinh |

| Khiem | Phong Hanh Chinh |

+ -+ -+

b Hiển thị tên nhân viên cho mỗi dự án

select first_name,pro_name from employee inner join project on employee.de

pt_id=project.dept_id;

+ -+ -+

| first_name | pro_name |

+ -+ -+

| Anh | Web ban DTDD |

| Chinh | Web ban DTDD |

| Quan | Quan ly ban hang |

| Viet | Quan ly ban hang |

| Tuan | Quan ly ban hang |

Trang 5

| Cuong | Joomla |

| Thao | Joomla |

+ -+ -+

c Tìm xem phòng nào có nhân viên hưởng lương cao nhất

select first_name,name,basicsal from employee inner join department on

employee.dept_id=department.dept_id where basicsal=(select max(basicsal) from employee);

+ -+ -+ -+

| first_name | name | basicsal |

+ -+ -+ -+

| Tuan | Phong Giam Doc | 5000000 |

+ -+ -+ -+

ẸC ẸC đến giờ đi đá bóng roài ! Chiều về POST tiếp !

Ngày đăng: 07/09/2012, 10:29

Xem thêm

TỪ KHÓA LIÊN QUAN

w