Tải bản đầy đủ (.pdf) (19 trang)

Ngôn ngữ truy vấn có cấu trúc potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (843.96 KB, 19 trang )

Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
I. Khái quát về ngôn ngữ truy vấn có cấu trúc
1. Giới thiệu
 Ngơn ngữ SQL bao gồm các phần:
 Ngơn ngữ định nghĩa dữ liệu (Data Description Language).
 Ngơn ngữ thực thi dữ liệu tương tác (Data Mapulation
Language).
 - DML nhúng.
 - Định nghĩa khung nhìn.
 - Phân quyền và bảo mật.
 - Ràng buộc tồn vẹn.
1
CHƯƠNG 3: NGÔN NGỮ TRUY


VẤN CÓ CẤU TRÚC
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
2. Cấu trúc của ngôn ngữ SQL
2.1 Ngôn ngữ định nghĩa dữ liệu (DDL)
Ngôn ngữ định nghĩa dữ liệu là các lệnh cho phép định nghĩa cơ
sở dữ liệu bao gồm:
- Lệnh mô tả quan hệ.
- Lệnh xóa quan hệ.
- Lệnh tạo chỉ mục cho quan hệ.
- Lệnh xóa chỉ mục.

This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
2.2 Ngôn ngữ thao tác dữ liệu (DML)
Ngôn ngữ thao tác dữ liệu là các lệnh cho phép thao tác trên cơ sở dữ liệu bao
gồm:
- Truy xuất dữ liệu.
- Cập nhật dữ liệu.
- Khai thác dữ liệu.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed

Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
II. CÁC LỆNH LIÊN QUAN ĐẾN CẤU TRÚC CỦA CƠ SỞ
DỮ LIỆU
1. Lệnh tạo cấu trúc cho một bảng mới (Create Table)
1.1 Công dụng
Dùng để tạo cấu trúc cho một bảng.
1.2 Cú pháp
CREATE TABLE<tên bảng>
( <thuộc tính 1> <kiểu dữ liệu> [not null] [unique] [RBTV thuộc tính],
………,
<thuộc tính n> <kiểu dữ liệu> [not null] [unique] [RBTV thuộc tính],
[RBTV bảng])
This document was created with the trial version of Print2PDF!

Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
Trong đó kiểu dữ liệu bao gồm:
- Kiểu số (Numeric)
+ Số nguyên : INTEGER, SMALLINT
+ Số thực : FLOAT, REAL, DOUBLE PRECISION.
+ Số thực có định dạng : DECIMAL (i, j) hay NUMERIC (i, j)
- Kiểu chuỗi ký tự (Character - String)
+ Chuỗi ký tự có chiều dài cố định : CHAR (n)
+ Chuỗi ký tự có chiều dài biến động : VARCHAR (n)
- Kiểu ngày/giờ (DateTime) : YEAR, MONTH, DAY
- Kiểu tiền tệ (Currency).

- Kiểu luận lý (Yes/ No).
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
2. Thêm bớt các cột của một bảng (Alter table)
2.1 Công dụng
Dùng để thay đổi cấu trúc của bảng.
2.2 Cú pháp
ALTER TABLE <tên quan hệ>
ADD <thuộc tính> <kiểu dữ liệu>/ DROP <thuộc tính>
- ADD <thuộc tính> <kiểu dữ liệu> : thêm thuộc tính có
kiểu dữ liệu tương ứng

- DROP <thuộc tính> : xóa thuộc tính
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
3. Hủy bỏ một bảng (Drop table)
3.1Công dụng
Dùng để xóa bỏ một bảng.
3.2Cú pháp
DROP TABLE <tên bảng>
Ví dụ : Xóa bảng TAI_SAN
DROP TABLE TAI_SAN
This document was created with the trial version of Print2PDF!

Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
III. CÁC LỆNH CẬP NHẬT DỮ LIỆU CHO CƠ SỞ
DỮ LIỆU
1 Thêm các bộ vào một bảng (Insert into)
1.1Công dụng
Dùng để thêm một hay nhiều bộ bằng cách chỉ ra tên quan hệ và
danh sách các giá trị của một bộ.
1.2Cú pháp
- Thêm một bộ vào một quan hệ:
INSERT INTO <BẢNG> {<thuộc tính 1>, <thuộc tính 2>,…}
VALUES (<giá trị 1>, <giá trị 2>,…)

This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
2. Hủy các bộ trong một bảng (Delete from)
2.1 Công dụng:
Dùng để xóa khỏi một quan hệ một hay nhiều bộ.
2.2 Cú pháp:
DELETE [FROM] < tên bảng>
[WHERE <điều kiện>]
Nếu không chỉ ra điều kiện ở mệnh đề WHERE thì tất cả các
bộ trong quan hệ sẽ bị xóa hết.
This document was created with the trial version of Print2PDF!

Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
3. Cập nhật nội dung các bộ trong một bảng (Update
table)
3.1Công dụng
Cập nhật các giá trị thuộc tính của một hay nhiều bộ được
chọn để cập nhật.
3.2Cú pháp
UPDATE <tên bảng>
SET <thuộc tính 1> = <giá trị 1>,
<thuộc tính 2> = <giá trị 2>,


[WHERE <điều kiện>]
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
IV. CÁC LỆNH TRUY VẤN DỮ LIỆU TRONG
CƠ SỞ DỮ LIỆU (SELECT)
1. Phép chiếu
- Liệt kê các thuộc tính cần hiển thị trong kết quả của câu truy vấn.
- Nếu danh sách các thuộc tính là * có nghĩa là chọn tất cả các
thuộc tính.
- Cú pháp:
SELECT <Danh sách các thuộc tính>.

FROM <Danh sách quan hệ>.
hoặc
SELECT UNIQUE <Danh sách các thuộc tính>.
FROM <Danh sách quan hệ>.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
2. Phép chọn
- Phép chọn là điều kiện liên quan đến thuộc tính của quan hệ
xuất hiện.
- Cú pháp:
SELECT <Danh sách các thuộc tính>.

FROM <Danh sách quan hệ>.
WHERE <Điều kiện>.
Hoặc
SELECT DISTINC <Danh sách các thuộc tính>.
FROM <Danh sách quan hệ>.
WHERE <Điều kiện>.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
3. Phép tích Descartes
- Liệt kê tất cả các quan hệ cần thiết cho việc đánh giá biểu
thức.

- Cú pháp:
SELECT <Danh sách các thuộc tính>.
FROM <Danh sách quan hệ>.
- Nếu các quan hệ có các thuộc tính với tên giống nhau thì
phải chỉ rõ thuộc tính ở quan
hệ nào.
<Tên quan hệ> <Tên thuộc tính>
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
4. Phép  - kết
SELECT <Danh sách các thuộc tính>

FROM <Danh sách quan hệ>
WHERE <Điều kiện kết
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
5. Phép tính toán trong câu truy vấn
Các hàm làm việc trên tập hợp bao gồm các hàm sau:
- Count : dùng để đếm các bộ
- Sum: dùng để tính tổng giá trị
- Avg: dùng để tính giá trị trung bình
- Max: dùng để tính giá trị lớn nhất
This document was created with the trial version of Print2PDF!

Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
6. Truy vấn lồng nhau
- SQL cung cấp các cấu trúc ngôn ngữ cho phép lồng các
câu truy vấn thành các truy vấn con.
- Câu truy vấn con (Sub Query) là một biểu thức SELECT –
FROM – WHERE lồng trong câu truy vấn khác (Outer
Query).
- Câu truy vấn con thường được dùng để kiểm tra các tập
hợp thành viên, so sánh tập hợp và định bản số.
- Câu truy vấn con được sử dụng trong mệnh đề WHERE
của một câu truy vấn khác. Mệnh đề SELECT trong

truy vấn con phải phù hợp với số thuộc tính và kiểu dữ
liệu của mệnh đề WHERE trong truy vấn ngoài.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
- Truy vấn con trả về giá trị tập hợp trong mệnh đề WHERE được sử
dụng như sau:
<Biểu thức> [NOT] IN (<Truy vấn con>).
<Biểu thức> <Phép toán so sánh> ANY (<Truy vấn con>).
<Biểu thức> <Phép toán so sánh> ALL (<Truy vấn con>).
- Truy vấn con để kiểm tra sự tồn tại:
[NOT] EXIST (<Truy vấn con>).

- Các câu truy vấn con trong một mệnh đề WHERE có thể được kết
hợp bằng các sử dụng các phép nối luận lý (logic) như: and, or,
not…
- Trong một câu truy vấn có thể có nhiều cấp độ lồng nhau. Nếu có các
thuộc tính trùng tên nhau thì theo quy ước ta có tên thuộc tính
tham chiếu tới quan hệ trong câu truy vấn con ở mức gần nhất.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh


Hai
Hai
Quan
Quan
7. Phân nhóm dữ liệu
- Mỗi nhóm bộ được phân nhóm trên cơ sở cùng thuộc tính trong
quan hệ. Mỗi nhóm bộ gồm tập hợp các bộ có cùng giá trị trên

các thuộc tính gom nhóm. Các hàm gom nhóm áp dụng trên mỗi
bộ độc lập nhau.
Cú pháp câu lệnh SQL như sau: SELECT <các thuộc tính [với hàm kết
hợp]> FROM R1, R2,… ,Rm
[WHERE]
GROUP BY <các thuộc tính gom nhóm>
[HAVING <điều kiện trên nhóm>]
- Mệnh đề GROUP BY chỉ ra các thuộc tính gom nhóm.
- Mệnh đề HAVING lấy các giá trị của hàm gom nhóm trên những
nhóm thỏa mãn một số điều kiện nhất định. Mệnh đề này dùng để
chỉ điều kiện lọc trên các nhóm chứ không lọc trên từng bộ. Điều
kiện trong mệnh đề HAVING được thực hiện sau khi gom nhóm
các bộ.
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />Choose Learn Succeed
Trư
Trư


ng
ng
Cao
Cao
Dang Tai
Dang Tai
Chinh
Chinh



Hai
Hai
Quan
Quan
8. Truy vấn tổng hợp
Cú pháp:
SELECT DISTINCT *| danh sách thuộc tính <biểu thức>,…
FROM <danh sách các quan hệ>
WHERE <biểu thức điều kiện>
GROUP BY <danh sách thuộc tính>
HAVING <điều kiện nhóm>
ORDER BY <danh sách các thuộc tính> [ASC][DEC].
- Mệnh đề ORDER BY dùng để sắp xếp thứ tự (mặc định
là sắp xếp tăng dần):
This document was created with the trial version of Print2PDF!
Once Print2PDF is registered, this message will disappear!
Purchase Print2PDF at />

×