1. Trang chủ
  2. » Giáo Dục - Đào Tạo

slide chương 2 Cơ sở dữ liệu

38 6 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 38
Dung lượng 2,98 MB

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

Nội dung

PowerPoint Template CƠ SỞ DỮ LIỆU Khoa CNTT CHƯƠNG 2 ĐẠI SỐ QUAN HỆ HƢỚNG DẪN HỌC Để hoàn thành tốt bài học này sinh viên cần thực hiện nhiệm vụ sau + Nắm vững nội dung bài học tuần 2 + Làm đầy đủ bài tập + Nghiên cứu trước tài liệu tham khảo 2 2 SQL  a Lệnh tạo bảng create table tên bảng ( tên cột kiểu DL not null, )  trong đó tên bảng bắt đầu bằng 1 chữ cái, không có dấu cách ký tự đặc biệt, không trùng từ khóa tên cột đặt theo quy tắc giống tên bảng và là duy nhất trong một bảng not nul.

Trang 1

CƠ SỞ DỮ LIỆU

Khoa CNTT

Trang 2

CHƯƠNG 2: ĐẠI SỐ QUAN HỆ

Trang 5

2.2 SQL

a Lệnh tạo bảng

create table tên_bảng

( tên_cột kiểu_DL [not null],

)

 trong đó:

- tên bảng : bắt đầu bằng 1 chữ cái, không có dấu cách &

ký tự đặc biệt, không trùng từ khóa

- tên cột : đặt theo quy tắc giống tên bảng và là duy nhất trong một bảng

- not null : không được phép để trống

Trang 7

- Nếu không chỉ định DS cột thì máy tính sẽ lấy DS cột theo thứ

tự được tạo trong lệnh Create Table

- Nếu DS cột được đưa ra không bao gồm toàn bộ các cột của bảng thì giá trị trên những cột còn lại sẽ bị để trống

Trang 8

2.2 SQL

Ví dụ:

 Tạo bảng có tên, lược đồ và các bộ dữ liệu như

hình sau: (các cột B, C, E chứa tối đa 2 ký tự)

r (A B C D E)

1 a c 2 a

2 b d 3 b

3 c f 1 c

Trang 9

Dữ liệu ban đầu Lệnh chèn

insert into r (A,B)

Trang 10

2.2 SQL

c Lệnh xóa bảng

drop tên_bảng

d Lệnh hiển thị dữ liệu

select [* | Distinct] DS các thuộc tính

from tên_các_bảng | tên_các_view

[ where biểu thức điều_kiện ]

[ group by ds_cột [ having ĐK_nhóm ] ] [ order by tên_cột | biểu_thức [ASC|DESC]]

Trang 11

 Lệnh hiển thị dữ liệu

Lệnh Select không điều kiện

select [* | Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

Ví dụ: Cho biết kết quả các lệnh sau:

Trang 12

 Lệnh hiển thị dữ liệu

Lệnh Select không điều kiện

Ví dụ: Bài tập 1 - SQL

Bảng S

Trang 13

 Lệnh hiển thị dữ liệu

Lệnh Select không điều kiện

Ví dụ: Bài tập 1 - SQL

Bảng P

Trang 14

 Lệnh hiển thị dữ liệu

Lệnh Select không điều kiện

Ví dụ: Bài tập 1 - SQL

Bảng SP

Trang 15

 Lệnh hiển thị dữ liệu

Lệnh Select với điều kiện đơn giản

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

where biểu_thức_điều_kiện

Trong đó

- Biểu thức điều kiện có thể là một điều kiện

- hoặc nhiều điều kiện kết hợp với nhau qua phép toán AND,

OR

Trang 16

 Lệnh hiển thị dữ liệu

Lệnh Select với điều kiện đơn giản

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

where biểu_thức_điều_kiện

Mỗi điều kiện có thể viết dưới các dạng sau:

- biểu_thức {=, < >, >, >=, <, <=} giá trị

- biểu thức IN (tập giá trị)

- biểu thức số BETWEEN giá trị đầu AND giá trị cuối

- biểu thức ký tự LIKE chuỗi mẫu

Trang 17

Lệnh Select với điều kiện đơn giản

Trang 18

Lệnh Select với điều kiện đơn giản

Trang 19

Lệnh Select với điều kiện đơn giản

%: thay thế cho 1 xâu ký tự

Trang 20

 Lệnh hiển thị dữ liệu

Lệnh Select với các hàm thống kê

DS chiếu có thể sử dụng biểu thức hoặc các hàm

thống kê

- COUNT(*): đếm số bản ghi thỏa yêu cầu tìm kiếm

- COUNT(biểu_thức|tên_cột): đếm số bản ghi có giá trị trên

biểu thức hoặc trên cột thỏa điều kiện tìm kiếm

- MAX(biểu_thức_số), MIN (biểu_thức_số): hiển thị giá trị

lớn nhất hoặc nhỏ nhất

- AVG(biểu_thức_số): hiển thị giá trị trung bình của btsố

- SUM(bt_số): hiển thị tổng của biểu thức số

Trang 21

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

[where biểu_thức_điều_kiện ]

group by DS_cột [Having ĐK_nhóm ]

- Mệnh đề Group by DS_cột tạo ra các nhóm có cùng giá trị

trên DS_cột

Trang 22

 Lệnh hiển thị dữ liệu

Ví dụ tạo nhóm

Bảng SP

Select * From SP Group by S#

Trang 23

 Lệnh hiển thị dữ liệu

Ví dụ tạo nhóm

Bảng SP

Select * From SP Group by P#

Select * From SP Group by 2

Trang 26

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

- VD: Tìm số lượng cung cấp lớn nhất của từng mặt hàng

select max (QTY) from SP group by P#

Bảng SP Câu lệnh

Kết quả:

Trang 27

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

- VD: Tìm số lượng cung cấp lớn nhất của từng mặt hàng

select P# , max (QTY) from SP group by P#

Bảng SP Câu lệnh

Kết quả:

Trang 28

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

Trang 29

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

- VD: Tìm mã các đại lý cung cấp ít nhất 2 mặt hàng khác nhau:

select S#

from SP

group by S#

having count(Distinct P#)>=2

Trang 30

 Lệnh hiển thị dữ liệu

Tìm kiếm với mệnh đề group by

- VD: Tìm mã các đại lý cung cấp ít nhất 2 mặt hàng khác nhau:

select S# from SP

group by S#

having count(Distinct P#)>=2

Trang 31

 Lệnh hiển thị dữ liệu

Tìm kiếm có sắp xếp

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

Trang 32

 Lệnh hiển thị dữ liệu

Kết nối các bảng

select * | [Distinct] DS_chiếu

from tên_các_bảng | tên_các_view

where ĐK_kết_nối [AND biểu_thức_điều_kiện]

[group by DS_cột [Having ĐK_nhóm ]]

[order by tên_cột | biểu_thức [ASC | DESC]]

- Điều kiện kết nối theo qui tắc:

Tên_bảng1 Tên_cột_chung=Tên_bảng2.Tên_cột_chung

-Trong các phép tìm kiếm có từ 2 bảng trở lên, nếu tên

các cột (thuộc tính) là không duy nhất thì phải viết dưới

dạng Tên_bảng Tên_cột

Trang 34

where S# in (Select S# from SP)

- Các mệnh đề truy vấn con phải để trong cặp ()

- VD: Tìm tên các đại lý không cung cấp mặt hàng nào?

select SName

from S

Trang 35

- VD: Tăng giá mặt hàng P1 lên 10%

update P set price=1.1*Price

where P#='P1'

Trang 36

2.2 SQL

e2 Lệnh Delete

[where điều_kiện ]

- VD: Xóa thông tin về các lần bán mặt hàng P2

delete from SP where P#='P2'

Trang 37

2.2 SQL

e3 Lệnh bổ sung dữ liệu

Mệnh đề Select

f Lệnh tạo view

Create view Tên_View [( DS cột )]

AS mệnh_đề Select

Ngày đăng: 22/05/2022, 11:48