NGÔN NGỮ THAO TÁC DỮ LIỆU

Một phần của tài liệu Bài giảng cơ sở dữ liệu(1) (Trang 53 - 65)

- Dùng để giới hạn quyền truy xuất dữ liệu của

NGÔN NGỮ THAO TÁC DỮ LIỆU

Truy xuất dữ liệu: SELECT

10

NGÔN NGỮ THAO TÁC DỮ LIỆU

Mệnh đề FROM: chỉ định các bảng và khung nhìn cần truy xuất dữ liệu, tên các bảng và khung nhìn phân cách nhau bởi dấu phẩy.

Mệnh đề WHERE: xác định các điều kiện đối với việc truy xuất dữ liệu, thường sử dụng:

Các toán tử so sánh: =, >, <, <=, >=, <>, !>, !<

Giới hạn (BETWEEN và NOT BETWEEN)

Danh sách (IN và NOT IN)

Khuôn dạng (LIKE và NOT LIKE)

Giá trị chưa biết (IS NULL và NOT IS NULL)

Kết hợp các điều kiện (AND, OR)

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Ví dụ:

SELECT ten, diachi, dienthoai FROM nhanvien WHERE hsluong>2.34

 SELECT ten, tuoi, diachi FROM nhanvien WHERE hsluong BETWEEN 2.34 AND 6.52

SELECT * FROM nhanvien

WHERE hsluong IN (2.34, 2.76, 3.65, 6.52)

SELECT * FROM nhanvien WHERE hoten LIKE ‘% Nam’

11

NGÔN NGỮ THAO TÁC DỮ LIỆU

Sử dụng cấu trúc CASE để thay đổi dữ liệu kết quả

Ví dụ 1: Xếp loại học lực của sinh viên dựa trên điểm

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Sử dụng cấu trúc CASE để thay đổi dữ liệu kết quả

Ví dụ 2: In thông tin loại hình sử dụng đất dựa trên mã sử dụng đất

12

NGÔN NGỮ THAO TÁC DỮ LIỆU

Sử dụng chuỗi ký tự trong kết quả

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Sử dụng chuỗi ký tự trong kết quả

13

NGÔN NGỮ THAO TÁC DỮ LIỆU

Tính toán các giá trị trong câu lệnh SELECT

Chuyển đổi từ thang điểm 10 sang thang điểm 4

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Từ khóa DISTINCT: loại bỏ những dòng giá trị giống nhau

Hiển thị quê quán của sinh viên (không kể trùng nhau)

14

NGÔN NGỮ THAO TÁC DỮ LIỆU

Tạo bảng mới bằng câu lệnh SELECT…INTO

Tạo danh sách sinh viên mới với những sinh viên từ điểm 5 trở lên

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Sắp xếp kết quả truy vấn bằng ORDER BY

Ví dụ: Sắp xếp điểm của sinh viên từ cao xuống thấp:

15

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép nối (Join) được dùng để truy xuất dữ liệu từ 2 hay nhiều bảng hoặc khung nhìn trong cùng 1 CSDL hoặc trong các CSDL khác nhau.

Xuất kết quả tên khoa của sinh viên

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép nối bằng (Inner Join): giá trị các cột được sử dụng để nối được so sánh với nhau dựa trên tiêu chuẩn bằng và tất các các cột trong các bảng tham gia nối đều được đưa ra kết quả.

SELECT * FROM nhanvien, donvi

WHERE nhanvien.madonvi = donvi.madonvi

16

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép nối với các điều kiện bổ sung: trong mệnh đề WHERE của phép nối ta bổ sung các điều kiện tìm kiếm khác

Tìm tất cả sinh viên thuộc khoa Sư phạm?

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép nối tự nhiên (natural join): là trường hợp đặc biệt của inner join, gộp các cột giống nhau.

Phép nối với các điều kiện bổ sung: trong mệnh đề WHERE của phép nối ta bổ sung các điều kiện tìm kiếm khác

SELECT hoten, diachi, tendonvi FROM nhanvien, donvi WHERE nhanvien.madonvi = donvi.madonvi AND nhanvien.hsluong>=3.5

Phép nối và các alias

SELECT n1.hoten FROM nhanvien n1, nhanvien n2

WHERE n2.hoten = ‘Trần Nhật Nam’ AND n1.diachi = n2.diachi

17

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép nối ngoài (outer join): không đòi hỏi các record trong hai bảng phải khớp nhau.

Phép nối ngoài trái (left outer join): chứa tất cả mẫu tin của bảng bên trái và những mẫu tin khớp với nó ở bảng bên phải.

SELECT * FROM nhanvien LEFT OUTER JOIN donvi ON nhanvien.madonvi = donvi.madonvi

Phép nối ngoài phải (right outer join) giữ lại bảng bên phải và những mẫu tin khớp bên trái.

SELECT * FROM nhanvien RIGHT OUTER JOIN donvi ON nhanvien.madonvi = donvi.madonvi

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Phép hợp UNION: hợp các kết quả của hai hay nhiều truy vấn thành một tập kết quả duy nhất.

18

NGÔN NGỮ THAO TÁC DỮ LIỆU

Tạo thống kê dữ liệu với COMPUTE … BY: được dùng kết hợp với ORDER BY để tạo ra các report thống kê giá trị theo từng nhóm.

Các hàm được sử dụng với COMPUTE … BY bao gồm: SUM, AVG, MIN, MAX và COUNT.

SELECT hoten, tendonvi, hsluong FROM nhanvien, donvi WHERE nhanvien.madonvi = donvi.madonvi ORDER BY nhanvien.madonvi

COMPUTE AVG (hsluong) BY nhanvien.madonvi

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Thống kê dữ liệu với GROUP BY và HAVING

Các hàm được sử dụng với GROUP BY bao gồm: SUM, AVG, MIN, MAX và COUNT.

Ví dụ: cho biết hệ số lương trung bình của các nhân viên theo từng đơn vị và hiển thị những đơn vị có hệ số lương trình bình lớn hơn 2.34

SELECT donvi.madonvi, tendonvi, avg (hsluong)

FROM nhanvien, donvi WHERE nhanvien.madonvi = donvi.madonvi GROUP BY donvi.madonvi, tendonvi

HAVING avg(hsluong) > 2.34

19

NGÔN NGỮ THAO TÁC DỮ LIỆU

Truy vấn con (subquery): câu truy vấn lồng bên trong một câu truy vấn khác.

Ví dụ: hiển thị thông tin về các nhân viên làm việc ở những đơn vị có số điện thoại không bắt đầu bằng số 82

SELECT * FROM nhanvien WHERE madonvi NOT IN (SELECT madonvi FROM donvi

WHERE dienthoai LIKE ‘82%’)

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Thêm dữ liệu với câu lệnh INSERT

INSERT INTO nhanvien VALUES (‘NV005’, ’Trần Thanh Tùng’, ’23/5/1984’, NULL, ‘848323’, 2.34, ‘05’)

Trường hợp nhập 1 số cột trong bảng

INSERT INTO nhanvien (manv, hoten, diachi) VALUES (‘NV006’, ‘Nguyễn Thị An’ , ‘Tp. Cao Lãnh’)

Ngoài ra có thể nhập từ bảng khác

20

NGÔN NGỮ THAO TÁC DỮ LIỆU

Cập nhật dữ liệu với lệnh UPDATE

Ví dụ: tăng lương thêm 0.3 cho những nhân viên làm việc tại đơn vị có mã đơn vị là 05

UPDATE nhanvien SET hsluong = hsluong + 0.3 WHERE madonvi = ‘05’

Từ khóa FROM dùng khi điều kiện cập nhật có liên quan đến bảng khác.

Biên soạn: GV. Ths. Phạm Thế Hùng

NGÔN NGỮ THAO TÁC DỮ LIỆU

Xóa dữ liệu: DELETE

DELETE FROM nhanvien FROM donvi

WHERE nhanvien.madonvi = donvi.madonvi AND donvi.dienthoai = ‘848835’

21

Một phần của tài liệu Bài giảng cơ sở dữ liệu(1) (Trang 53 - 65)

Tải bản đầy đủ (PDF)

(78 trang)