You are on page 1of 3

Thực hành: Tuần 1

I. Cho lược đồ cơ sở dữ liệu sau


s_region(id,name)
s_title(title)
s_dept(id,name,region_id)
s_emp(id,last_name,first_name,userid,start_date,comments,manager_id,title,dep
t_id, salary,commission_pct)
s_customer(id,name,phone,address,city,state,country,zip_code,credit_rating,sale
s_rep_id,region_id,comments)
s_product(id,name,short_desc,suggested_whlsl_price,whlsl_units)
s_ord(id,customer_id,date_ordered,date_shipped,sales_rep_id,total,payment_typ
e,order_filled)
s_item(ord_id,item_id,product_id,price,quantity,quantity_shipped)
II. Kết nối đến user sys và tạo mới một user
--Open Sqlplus and connect to sys

>sqlplus / as sysdba

--Create user

Create user c##myuser identified by password;

Grant DBA to c##myuser;

III. Tạo một database


1. Kết nối đến user c##myuser sử dụng Oracle SQL Developer
2. Sử dụng scrip file ‘createProductScript’ để tạo và đẩy dữ liệu vào các table.
3. Tạo một entity-relationship (ER) diagram sử dụng Oracle SQL Developer.
Create a diagram for existing database schema or its subset as follows:

1. Click File → Data Modeler → Import → Data Dictionary.

2. Select a DB connection (add one if none).

3. Click Next.

4. Check one or more schema names.

5. Click Next.

6. Check one or more objects to import.

7. Click Next.
8. Click Finish.

The ERD is displayed.

IV. Sử dụng SQL Plus hoặc SQL developer để thực hiện những yêu
cầu sau
1. Hiển thị userid của employee 23.
2. Hiển thị first name, last name, và mã phòng của nhân viên làm ở phòng
10 và 11. Sắp xếp theo last name. Nối 2 cột first name và last name lại
với nhau và đặt tiêu đề cho cột mới là Employees. (sử dụng ‘||’ để thực
hiện nối 2 cột).
3. Hiển thị tất cả nhân viên có last name chứa ký tự ‘s’.
4. Hiển thị user id và start date của nhân viên bắt đầu làm trong khoảng
thời gian từ 14/5/1990 đến 26/5/1991. Sắp xếp start date giảm dần.
5. Viết câu lệnh hiển thị last name và salary của nhân viên có lương nằm
ngoài khoảng 1000 đến 2500.
6. Hiển thị last name và salary của nhân viên ở phòng 31, 42, hoặc 50 và
có lương lớn hơn 1350. Đặt lại tên cột last name thành Employee
Name, cột salary thành Monthly Salary.
7. Hiển thị last name và start date của nhân viên được thuê vào làm năm
1991.
8. Hiển thị employee id, last name, và salary tăng 15% và đặt lại tên cột
của salary mới này thành Whole number.
9. Hiển thị employee last name và title trong dấu ngoặc đơn ‘()’. Thông
tin hiển thị dưới dạng sau.
EMPLOYEE
----------------------------------------------------
Biri(Warehouse Manager)
Catchpole(Warehouse Manager)
Chang(Stock Clerk)
Dancs(Stock Clerk)
Dumas(Sales Representative)
10. Hiển thị product name có chứa chữ ‘ski’.
11. Đối với mỗi nhân viên, tính số tháng từ ngày vào làm cho đến ngày
hiện tại. Sắp xếp và làm tròn kết quả theo tháng. (sử dụng hàm
MONTHS_BETWEEN và ROUND).
12. Hiển thị giá trị total cao nhất và thấp nhất trong bảng S_ORD. Đặt tên
cột tương ứng là Highest và Lowest.
13. Hiển thị product id, name, và tổng số lượng đặt hàng (sum quantity)
của product này trong đơn hàng có order id là 101. Cột tổng số lượng
đặt hàng được đặt lại tên là ORDERED.
14. Hiên thị customer id và last name của nhân viên bán hàng (sale) đại
diện cho customer này. Sắp xếp theo last name.
15. Hiển thị customer id, name và order id của khách hàng. Hiển thị cả
những khách hàng chưa đặt hàng.
16. Hiển thị id, last name của employee, và id, last name người quản lý
(manager) của nhân viên này.
17. Hiển thị customer id, name và product id, name và tổng số lượng sản
phẩm mà khách hàng này đã đặt với tổng số lượng lớn hơn 100000.

Home work
18. Hiển thị full name của những employee mà không có người quản lý
(manager).
19. Hiển thị tất cả product có tên bắt đầu bằng chữ ‘Pro’, sắp xếp theo tên.
20. Hiển thị tất cả product name và mô tả (short_desc) của những sản phẩm
có phần mô tả chứa cụm từ ‘bicycle’.
21. Có bao nhiêu người quản lý (manager).
22. Hiển thị product id và số lần product này được đặt hàng (ordered). Chỉ
hiển thị những sản phẩm có số lần đặt từ 3 lần trở lên. Sắp xếp theo số
lần đặt hàng.
23. Hiển thị region id, name, và đếm số lượng deparment ở mỗi region.
24. Hiển thị customer name, và đếm số hóa đơn ứng với mỗi khách hàng.
25. Hiển thị employee id, first name, last name, và user id có salary lớn hơn
salary trung bình.
26. Hiển thị employee id, first name, và last name của nhân viên có salary
lớn hơn salary trung bình và employee này làm việc cùng phòng ban
với nhân viên mà last name chứa ký tự ‘t’.
27. Viết một câu truy vấn hiển thị giá trị lớn nhất, nhỏ nhất đối với mỗi loại
công việc (title).

You might also like