Chào mừng quý vị đến với Website của Nguyễn Ngọc Quang.
Quý vị chưa đăng nhập hoặc chưa đăng ký làm thành viên, vì vậy chưa thể tải được các tư liệu của Thư viện về máy tính của mình.
Nếu chưa đăng ký, hãy đăng ký thành viên tại đây hoặc xem phim hướng dẫn tại đây
Nếu đã đăng ký rồi, quý vị có thể đăng nhập ở ngay ô bên phải.
Ngôn ngữ truy vấn SQL

- 0 / 0
Nguồn:
Người gửi: Nguyễn Ngọc Quang (trang riêng)
Ngày gửi: 21h:22' 23-05-2009
Dung lượng: 92.5 KB
Số lượt tải: 11
Người gửi: Nguyễn Ngọc Quang (trang riêng)
Ngày gửi: 21h:22' 23-05-2009
Dung lượng: 92.5 KB
Số lượt tải: 11
Số lượt thích:
0 người
NGÔN NGỮ TRUY VẤN SQL
Structured Query Language
Ngôn ngữ SQL là ngôn ngữ phi thủ tục được phát triển từ ngôn ngữ SEQUEL (Structured English Query Language) là một sản phẩm cuả một nhóm nghiên cứu tại Trung tâm nghiên cứu IBM tại San Jose, Bang California (Mỹ).
Đây là ngôn ngữ phi thủ tục, cho phép thao tác trên nhiều Cơ sở dữ liệu và hầu như không thay đổi trên nhiều hệ Quản trị dữ cơ sở liệu.
Ngôn ngữ SQL gồm ba thành phần chính:
DDL (Data Description Language) diễn tả dữ liệu, gồm các câu lệnh định nghiã cấu trúc.
DML (Data Mamipulation Language) là các câu lệnh truy xuất dữ liệu.
DCL (Data Control Language) dùng truy xuất dữ liệu trên từng đối tượng.
II/ NGÔN NGỮ THAO TÁC DỮ LIỆU
1. Câu lệnh Select:
Cú pháp:
Select (FieldsName)
From TableName[QueryName]
Trong đó:
- FieldsName là danh sách các trường trong Cơ sở dữ liệu được chọn, trong trường hợp chọn tất cả các trường thì có thể dùng ký tự đại diện * để chọn.
TableName/QueryName là tên bảng hay tên Query sử dụng để rút trích.
Trong đại số quan hệ:
1.1 Phép chiếu:
Select (FieldsName)
From TableName[QueryName]
1.2 Phép chọn:
Select (FieldsName)
From TableName[QueryName]
Where Condition
Trong đó : Condition trong phát biểu Where là tiêu chuẩn chọn lọc.
Chú ý:
Nếu dùng hết các trường trong Cơ sở dữ liệu ta có thể dùng ký đại diện *.
Nếu một trường xuất hiện trên nhiều Table thì:
Select TableName.FieldName
From TableName
Ví dụ:
Select KH.*
From KH,PXN
Hằng chuỗi phải nằm trong dấu nháy đôi (“ ”).
Khi tính toán trên các trường, để thuận tiện và dễ dàng trong các thao tác, người ta dùng bí danh để chỉ định theo cú pháp:
Select FieldName Alias Expression.
2. Các câu lệnh SQL thao tác trên nhóm (group):
2.1 Group By (Field_List)
Phối hợp các mẩu tin giống nhau theo từng trường đã định để chọn. Khi dùng Group By, người ta thường tạo ra một trường mang tính chất đặc thù cuả nhóm.
Field_List là danh sách tên tối đa 10 field.
2.2 Having
Having chỉ định mẩu tin nào được phép hiển thị:
Cú pháp:
Select Field_List
From Table
[Where Criteria]
Group By Field_List
[Having Group by]
2.3 Toán tử:
Sum: tổng; AVG: trung bình;
Max: lớn nhất Min: nhỏ nhất;
Between GT1 and GT2 : khống chế miền giá trị.
2.4 Order By:
Order By chỉ định trường làm tiêu chuẩt sắp xếp (sort) tăng dần hay giảm dần.
3. Nối kết:
Phép toán kết cuả Đại số quan hệ A, B được định nghã:
Where A.FieldNameLink ( B.FieldNameLink
* Phát biểu Inner Join:
Ghi nhận kế tiếp form tạo mối liên kết ngang bằng từ hai quan hệ có giá trị bằng nhau ở trường chung.
Cú pháp:
From Table1 Inner Join Table2 on Table1.FieldName=Table2.FieldName
Chú ý: Các trường nối kết phải cùng kiểu dữ liệu. Các Inner Join có thể lồng nhau. Cú pháp:
From Table1 Inner Join (Table2..
Inner Join(Table3…
on Table(i).FieldName=Table(i+1).FieldName)
…)
on Table1.FieldName=Table2.FieldeName)
* Left Join / Right Join:
Left Join / Right Join dùng trong form kết hợp với SoucreTable:
From SoucreTable [Left Join/Right Join] Table2
on Table1.FieldName=Table2.FieldName
Left Join sẽ tạo ra một liên kết Left Auter Join bao gồm các mẩu tin không khớp với Table2.
Right Join tạo ra liên kết Right Join gồm các mẩu tin ở Table2 cho dù không có mẩu tin so khớp với nó ở Table1.
4. Toán tử:
IN:
Xác định các Table trong DataBase bên ngoài:
Select [InTo] Table In [Path];DataBase=Path
EXIST:
Ghi nhận sự tồn tại một phần tử tồi tại trong một tập hợp các phần tử:
Select TableName.Field_list
From TableName
Where FieldName Exist FilelName From TableName
Structured Query Language
Ngôn ngữ SQL là ngôn ngữ phi thủ tục được phát triển từ ngôn ngữ SEQUEL (Structured English Query Language) là một sản phẩm cuả một nhóm nghiên cứu tại Trung tâm nghiên cứu IBM tại San Jose, Bang California (Mỹ).
Đây là ngôn ngữ phi thủ tục, cho phép thao tác trên nhiều Cơ sở dữ liệu và hầu như không thay đổi trên nhiều hệ Quản trị dữ cơ sở liệu.
Ngôn ngữ SQL gồm ba thành phần chính:
DDL (Data Description Language) diễn tả dữ liệu, gồm các câu lệnh định nghiã cấu trúc.
DML (Data Mamipulation Language) là các câu lệnh truy xuất dữ liệu.
DCL (Data Control Language) dùng truy xuất dữ liệu trên từng đối tượng.
II/ NGÔN NGỮ THAO TÁC DỮ LIỆU
1. Câu lệnh Select:
Cú pháp:
Select (FieldsName)
From TableName[QueryName]
Trong đó:
- FieldsName là danh sách các trường trong Cơ sở dữ liệu được chọn, trong trường hợp chọn tất cả các trường thì có thể dùng ký tự đại diện * để chọn.
TableName/QueryName là tên bảng hay tên Query sử dụng để rút trích.
Trong đại số quan hệ:
1.1 Phép chiếu:
Select (FieldsName)
From TableName[QueryName]
1.2 Phép chọn:
Select (FieldsName)
From TableName[QueryName]
Where Condition
Trong đó : Condition trong phát biểu Where là tiêu chuẩn chọn lọc.
Chú ý:
Nếu dùng hết các trường trong Cơ sở dữ liệu ta có thể dùng ký đại diện *.
Nếu một trường xuất hiện trên nhiều Table thì:
Select TableName.FieldName
From TableName
Ví dụ:
Select KH.*
From KH,PXN
Hằng chuỗi phải nằm trong dấu nháy đôi (“ ”).
Khi tính toán trên các trường, để thuận tiện và dễ dàng trong các thao tác, người ta dùng bí danh để chỉ định theo cú pháp:
Select FieldName Alias Expression.
2. Các câu lệnh SQL thao tác trên nhóm (group):
2.1 Group By (Field_List)
Phối hợp các mẩu tin giống nhau theo từng trường đã định để chọn. Khi dùng Group By, người ta thường tạo ra một trường mang tính chất đặc thù cuả nhóm.
Field_List là danh sách tên tối đa 10 field.
2.2 Having
Having chỉ định mẩu tin nào được phép hiển thị:
Cú pháp:
Select Field_List
From Table
[Where Criteria]
Group By Field_List
[Having Group by]
2.3 Toán tử:
Sum: tổng; AVG: trung bình;
Max: lớn nhất Min: nhỏ nhất;
Between GT1 and GT2 : khống chế miền giá trị.
2.4 Order By:
Order By chỉ định trường làm tiêu chuẩt sắp xếp (sort) tăng dần hay giảm dần.
3. Nối kết:
Phép toán kết cuả Đại số quan hệ A, B được định nghã:
Where A.FieldNameLink ( B.FieldNameLink
* Phát biểu Inner Join:
Ghi nhận kế tiếp form tạo mối liên kết ngang bằng từ hai quan hệ có giá trị bằng nhau ở trường chung.
Cú pháp:
From Table1 Inner Join Table2 on Table1.FieldName=Table2.FieldName
Chú ý: Các trường nối kết phải cùng kiểu dữ liệu. Các Inner Join có thể lồng nhau. Cú pháp:
From Table1 Inner Join (Table2..
Inner Join(Table3…
on Table(i).FieldName=Table(i+1).FieldName)
…)
on Table1.FieldName=Table2.FieldeName)
* Left Join / Right Join:
Left Join / Right Join dùng trong form kết hợp với SoucreTable:
From SoucreTable [Left Join/Right Join] Table2
on Table1.FieldName=Table2.FieldName
Left Join sẽ tạo ra một liên kết Left Auter Join bao gồm các mẩu tin không khớp với Table2.
Right Join tạo ra liên kết Right Join gồm các mẩu tin ở Table2 cho dù không có mẩu tin so khớp với nó ở Table1.
4. Toán tử:
IN:
Xác định các Table trong DataBase bên ngoài:
Select [InTo] Table In [Path];DataBase=Path
EXIST:
Ghi nhận sự tồn tại một phần tử tồi tại trong một tập hợp các phần tử:
Select TableName.Field_list
From TableName
Where FieldName Exist FilelName From TableName
 






Các ý kiến mới nhất