1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập thực hành môn Hệ quản trị cơ sơ dữ liệu

44 1,8K 10
Tài liệu đã được kiểm tra trùng lặp

Đ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 44
Dung lượng 429,6 KB

Nội dung

Tài liệu môn Hệ quản Trị CSDL

HCSDL 1 NN NN CHƯƠNG CHƯƠNG 2 2 SQL (Structured Query Language) HCSDL 2 NN NN Gi Gi ớ ớ i thi i thi ệ ệ u chung u chung  Là ngôn ngữ chuẩn cho các CSDL quan hệ  Chuẩn ANSI SQL được công bố vào năm 1989, 1992 và 1999  Đặc điểm của SQL:  Ngôn ngữ tựa tiếng Anh  Ngôn ngữ phi thủ tục  Gồm 3 nhóm lệnh:  DDL (Data Definition Language)  DML (Data Manipulation Language)  DCL (Data Control Language) 2 HCSDL 3 NN NN DDL DDL ( ( D D ata ata D D efinition efinition L L anguage) anguage)  DDL là ngôn ngữ định nghĩa dữ liệu gồm các lệnh  CREATE/ALTER/DROP DATABASE  CREATE/ALTER/DROP TABLE 3 HCSDL 4 NN NN DML DML ( ( D D ata ata M M anipulation anipulation L L anguage) anguage)  DML là ngôn ngữ thao tác dữ liệu  Gồm các lệnh:  SELECT  INSERT, UPDATE, DELETE, TRUNCATE 4 HCSDL 5 NN NN DCL DCL ( ( D D ata ata C C ontrol ontrol L L anguage) anguage)  DCL là ngôn ngữ điều khiển dữ liệu  Gồm các lệnh  GRANT/REVOKE/ADD  COMMIT/ROLLBACK 5 HCSDL 6 NN NN Truy v Truy v ấ ấ n d n d ữ ữ li li ệ ệ u (Data query) u (Data query)  Cú pháp chung của lệnh SELECT SELECT select_list [ INTO new_table ] FROM table_source [WHERE search_condition ] [GROUP BY group_by_expression [ HAVING search_condition ]] [ORDER BY order_expression [ ASC | DESC ]] 6 HCSDL 7 NN NN Câu l Câu l ệ ệ nh truy v nh truy v ấ ấ n đơn n đơn giả giả n n  Ví dụ: liệt kê tất cả giáo sư khoa IT SELECT P.Name FROM PROFESSOR P WHERE P.DeptID =‘CS’ P được gọi là biến bộ (tuple variable). Với câu lệnh đơn giản không cần phải dùng biến bộ này  Biểu thức đại số quan hệ tương đương?? 7 '' (( )) Name DeptID CS P ROFESSOR π σ = HCSDL 8 NN NN Chi Chi ế ế n lư n lư ợ ợ c chung c chung để để đ đ á á nh gi nh gi á á câu truy câu truy v v ấ ấ n đơn gi n đơn gi ả ả n n  Bước 1: mệnh đề FROM được đánh giá trước Æ tạo ra 1 bảng là kết quả tích Cartesian của các bảng trong mệnh đề FROM  Bước 2: mệnh đề WHERE được đánh giá Æ Tạo ra 1 bảng mới từ bảng của bước 1 và chỉ chứa các hàng thỏa điều kiện WHERE  Bước 3: mệnh đề SELECT được đánh giá -Æ tạo ra 1 bảng mới từ bảng của bước 2 nhưng chỉ chứa các cột trong mệnh đề SELECT 8 HCSDL 9 NN NN M M ệ ệ nh đ nh đ ề ề SELECT SELECT  Để đưa ra danh sách các cột cần xem  Cú pháp: SELECT [ ALL | DISTINCT ][ TOP n [ PERCENT ] [ WITH TIES ] ] < select_list > <select_list > ::= {* |{ table_name | view_name | table_alias }.* | { column_name | expression } [[ AS ] column_alias ] | column_alias = expression } [ , n ] 9 HCSDL 10 NN NN M M ệ ệ nh đ nh đ ề ề SELECT SELECT  ALL (DEFAULT): hiển thị tất cả các bản ghi kể cả các hàng trùng nhau.  DISTINCT: chỉ hiển thị các hàng duy nhất không trùng nhau trong bảng kết quả.  Ví dụ: liệt kê tất cả các thành phố mà hiện thời các khách hàng đang sống SELECT DISTINCT City , Region FROM Customers 10 [...]... UnitPrice*Quantity* (1- Discount) FROM [Order Details] 12NN HCSDL 12 Các hàm tập hợp (Aggregate function) Tên hàm SUM Ý nghĩa Tính tổng các số MIN Trả về giá trị nhỏ nhất MAX Trả về giá trị lớn nhất AVG Tính giá trị trung bình COUNT Đếm số phần tử (not null) Được dùng để tổng kết các giá trị của 1 cột hay 1 nhóm cột bên trong 1 bảng và cho kết quả là 1 giá trị đơn 13 NN HCSDL 13 Ví dụ các hàm gộp trong lệnh select SELECT... Downtown Redwood Perryridge null 3000 4000 1700 null customer_name Jones Smith null Hayes NN HCSDL 28 Kết nối các bảng Kết nối chỉ tồn tại trong thời gian truy vấn Kết nối không thay đổi dữ liệu trong các bảng của cơ sở dữ liệu Nên tạo bí danh (alias) cho tên bảng để tránh gõ tên dài và làm truy vấn dễ đọc hơn Ví dụ SELECT t.Title_Id, t.Title, p.Pub_Id FROM Titles t JOIN Publishers p on t.Pub_Id=p.Pub_Id... Categories c ON p.CategoryID = c.CategoryID 30NN HCSDL 30 Biểu thức đại số quan hệ tương đương SELECT FROM Rel1 JOIN Rel2 ON condition1 […,n] Tương đương với π SelectListσ Condition (Re l1x x Reln ) 31NN HCSDL 31 Truy vấn con - Subqueries Subquery là lệnh SELECT mà kết quả trả về là 1 giá trị đơn (single value) hoặc tập giá trị và được đặt lồng vào bên trong các lệnh SELECT, INSERT, UPDATE, hay... kết quả Cú pháp [ ORDER BY { order_by_expression [ ASC | DESC ] } [ , n] ] ASC (ascending) : xếp theo thứ tự tăng DESC (descending): xếp theo thứ tự giảm 16NN HCSDL 16 Nhóm dữ liệu trong bảng kết quả Những mệnh đề dùng để nhóm dữ trong bảng kết quả: GROUP BY: tổng hợp bảng kết quả theo nhóm bằng cách dùng các hàm gộp COMPUTE và COMPUTE BY: mệnh đề COMPUTE trong lệnh SELECT được dùng để phát ra các... Một truy vấn thể chứa cả mệnh đề WHERE và mệnh đề HAVING Mệnh đề WHERE được áp dụng trước cho các hàng trong bảng được truy vấn Chỉ những hàng nào thoả mãn điều kiện của mệnh đề WHERE mới được nhóm dữ liệu Sau đó mệnh đề HAVING sẽ được áp dụng cho các nhóm Chỉ những nhóm thỏa mãn điều kiện HAVING mới được xuất ra bảng kết quả 22NN HCSDL 22 V í dụ SELECT titles.pub_id, AVG(titles.price) FROM titles... table_namen WHERE condition1, condition2,………., conditionn Ví dụ SELECT Title_Id, Title INTO NewTitles FROM Titles WHERE Price > $15 HCSDL 24 24NN Mệnh đề JOIN (kết nối các bảng) Mệnh đề join dùng để khôi phục dữ liệu từ nhiều hơn 1 bảng Cú pháp SELECT column_name [,n ] FROM table_name table_alias [CROSS|INNER|[LEFT | RIGHT]OUTER] JOIN table_name table_alias [ON table_name.ref_column_name join_operator table_name.ref_column_name]... hóa đơn SELECT count (OrderID) from dbo.Orders Đếm số hoá đơn SELECT SUM (UnitPrice*Quantity*(1-Discount)) FROM dbo.[Order Details] Tính doanh số bán hàng 14NN HCSDL 14 Mệnh đề WHERE Chứa điều kiện lọc dữ liệu cần trả về Cú pháp: WHERE Ví dụ: SELECT CustomerID, CompanyName FROM Northwind.dbo.Customers WHERE Region = 'WA' Dùng like , is null, is not null, between and , !=, >, . HCSDL 1 NN NN CHƯƠNG CHƯƠNG 2 2 SQL (Structured Query Language) HCSDL 2 NN NN Gi Gi ớ ớ i thi i thi ệ ệ u chung u chung  Là ngôn ngữ chuẩn cho các CSDL quan hệ  Chuẩn ANSI SQL được công bố vào năm. chuẩn cho các CSDL quan hệ  Chuẩn ANSI SQL được công bố vào năm 1989, 1992 và 1999  Đặc điểm của SQL:  Ngôn ngữ tựa tiếng Anh  Ngôn ngữ phi thủ tục  Gồm 3 nhóm lệnh:  DDL (Data Definition Language) 

Ngày đăng: 28/03/2014, 20:41

TỪ KHÓA LIÊN QUAN

w