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

IT209 bai 3 truy van du lieu va bang ao ver2012 04

15 272 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 15
Dung lượng 1,91 MB

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

Nội dung

Viết được được các câu lệnh truy ván theo yêu cầu Truy vấn được dữ liệu từ nhiều bảng với các hình thức kết nối bảng khác Thực hiện được thao tác truy vấn lồng Tạo và sử dụng được View M

Trang 1

BÀI 3:

TRUY VẤN DỮ LIỆU VÀ BẢNG ẢO

ThS Trần Ngọc Thăng

1

Trang 2

• Dựa trên các cơ sở dữ liệu, chuyên viên quản trị dữ liệu thường phải trả lời

hàng loạt câu hỏi liên quan đến dữ liệu Chẳng hạn như “Cho biết địa điểm

của 3 cột ATM gần nhất”, “Sao kê thu chi 3 tháng gần đây của một tài khoản

ngân hàng”, “Cho biết 10 giao dịch với khối lượng tiền lớn nhất” …

TÌNH HUỐNG DẪN NHẬP

Câu hỏi đặt ra là:

Làm thế nào để hệ quản trị cơ sở dữ liệucó thể hiểu và trả lời những câu

hỏi này của người dùng?

Trang 3

Viết được được các câu lệnh truy ván theo yêu cầu

Truy vấn được dữ liệu từ nhiều bảng với các hình thức kết nối bảng khác

Thực hiện được thao tác truy vấn lồng

Tạo và sử dụng được View

MỤC TIÊU

3

Trang 4

Cấu trúc truy vấn cơ bản

Truy vấn dữ liệu từ nhiều bảng

Truy vấn lồng nhau

Bảng ảo (View)

NỘI DUNG

1

2

3

4

Trang 5

3.1 CẤU TRÚC TRUY VẤN CƠ BẢN

5

3.1.1 Câu lệnh SELECT

3.1.2 Mệnh đề WHERE

3.1.3 Một số hàm thường dùng

3.1.4 Truy vấn thống kê với GROUP BY và HAVING

3.1.5 Sắp xếp với ORDER BY

Trang 6

3.1 CẤU TRÚC TRUY VẤN CƠ BẢN

• Ngôn ngữ vấn tin có cấu trúc(SQL) là một ngôn ngữ rất phổ dụng trong lĩnh vực cơ sở

dữ liệu

• Microsoft xây dựng Transact-SQL dựa trên ngôn ngữ vấn tin có cấu trúc chuẩn

(ANSI-SQL: là ngôn ngữ vấn tin có cấu trúc do học viện quốc gia Hoa Kỳ đưa ra), ANSI-SQL

thường được gọi là SQL, ngôn ngữ này là cách thức chuẩn để giao tiếp với cơ sở dữ liệu

• Câu lệnh SELECT dùng để rút trích dữ liệu từ cơ sở dữ liệu, lệnh này cho phép chúng

ta rút trích một hàng hoặc nhiều hàng, một hoặc nhiều cột

Cú pháp:

Với,

<Table_Name> là tên của bảng dữ liệu

<Column_name(s)> là tên của cột hoặc danh sách cột cần lấy dữ liệu

• Câu lệnh SELECT mở rộng đi kèm với mệnh đề WHERE, GROUP BY, ORDER BY …

SELECT <Column_name(s)> FROM <Table_name>

Trang 7

3.2 TRUY VẤN DỮ LIỆU TỪ NHIỀU BẢNG

7

3.2.1 Inner Join

3.2.2 Left Outer Join

3.2.3 Right Outer Join

3.2.4 Full Outer Join

3.2.5 Cross Join

3.2.6 Self Join

3.2.7 Non-Equal Join

3.2.8 Union

Trang 8

3.2 TRUY VẤN DỮ LIỆU TỪ NHIỀU BẢNG

• Truy vấn dữ liệu từ nhiều bảng được xác định theo quan hệ giữa các cột của các bảng

với nhau Có thể truy vấn thông qua điều kiện liên kết trong mệnh đề WHERE hoặc từ

khóa JOIN

• Sử dụng điều kiện liên kết theo cột giữa các bảng, thông tin cần truy vấn được đặt ở

nhiều bảng khác nhau, để truy vấn được các thông tin như trên phải xác định điều kiện

liên kết giữa các bảng

• SQL Server cung cấp câu lệnh JOIN thay thế các phép toán liên kết

SELECT P.ProductID,

S.SupplierID,

S.CompanyName

FROM Suppliers AS S, Products AS P

WHERE S.SupplierID = P.SupplierID

AND P.UnitPrice > $10

AND S.CompanyName LIKE N'F%'

SELECT * FROM authors AS a INNER JOIN publishers AS p

ON a.city = p.city ORDER BY a.au_lname DESC

Trang 9

3.3 TRUY VẤN LỒNG NHAU (SUBQUERY)

9 3.3.1 Nested Scalar SubQuery

3.3.2 Correlated SubQuery

Trang 10

3.3 TRUY VẤN LỒNG NHAU (SUBQUERY)

• Trong câu lệnh truy vấn Select có câu lệnh truy vấn Select khác trong điều

kiện xác định của lệnh Select ngoài

• Thông thường các câu lệnh dạng này đi cùng các từ lhóa IN, NOT IN,

EXITST, NOT EXIST, ANY, ALL.

SELECT distinct pub_name

FROM publishers

WHERE pub_id IN

(SELECT pub_id

FROM titles

WHERE type = 'business')

SELECT DISTINCT pub_name FROM publishers

WHERE EXISTS (SELECT *

FROM titles WHERE pub_id = publishers.pub_id AND type = 'business')

Trang 11

3.4 BẢNG ẢO (VIEW)

11

3.4.1 Định nghĩa View

3.4.2 Sửa và Xóa View

Trang 12

3.4 BẢNG ẢO (VIEW)

• View hay bảng ảo là bảng được tạo thành bởi các cột lấy từ một hay nhiều

bảng khác.

• Bảng ảo có thể được tạo nên nhờ câu lệnh SELECT

CREATE VIEW titles_view

AS

SELECT title, type, price, pubdate

FROM titles

Trang 13

13

CÂU HỎI TRẮC NGHIỆM

1 Đâu là trật tự đúng của các từ khóa sau trong câu truy SQL?

2 Những tham số nào sau đây không thể đứng trong mệnh đề SELECT trong câu GROUP

BY theo ProductID

3 Liên kết hai bảng cho trước theo cách nào để được số bản ghi nhỏ nhất?

4 Từ khóa nào sau đây không được sử dụng trong truy vấn lồng nhau?

5 Có thể thực hiện truy vấn nào trên bảng ảo?

Trang 14

ĐÁP ÁN TRẮC NGHIỆM

1 Đâu là trật tự đúng của các từ khóa sau trong câu truy SQL?

a SELECT, FROM, ORDER BY b FROM, SELECT, ORDER BY

2 Những tham số nào sau đây không thể đứng trong mệnh đề SELECT trong câu GROUP

BY theo ProductID

c ProductName d COUNT(ProductID)

3 Liên kết hai bảng cho trước theo cách nào để được số bản ghi nhỏ nhất?

a INNER JOIN b LEFT OUTER JOIN

c RIGHT OUTER JOIN d Cả ba cách đều cho số bản ghi bằng nhau

4 Từ khóa nào sau đây không được sử dụng trong truy vấn lồng nhau?

5 Có thể thực hiện truy vấn nào trên bảng ảo?

Trang 15

TÓM LƯỢC CUỐI BÀI

Sau khi học xong Bài 3 Truy vấn dữ liệu và bảng ảo, học viên :

• Đã viết được được các câu lệnh truy ván theo yêu cầu

• Truy vấn được dữ liệu từ nhiều bảng với các hình thức kết nối bảng khác nhau

• Thực hiện được thao tác truy vấn lồng

• Tạo và sử dụng được View

15

Ngày đăng: 09/06/2017, 23:20

HÌNH ẢNH LIÊN QUAN

Bảng ảo (View) - IT209 bai 3 truy van du lieu va bang ao ver2012 04
ng ảo (View) (Trang 4)
3.4. BẢNG ẢO (VIEW) - IT209 bai 3 truy van du lieu va bang ao ver2012 04
3.4. BẢNG ẢO (VIEW) (Trang 12)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm