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

bài giảng cơ sở dữ liệu quan hệ và sql chương 2: Câu lệnh SQL- cđ cntt hữu nghị việt hàn

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 (566.21 KB, 46 trang )

Chương 2. Câu lệnh SQL
2- 1/46
Chương 2 CÂU LỆNH SQL
Lý thuyết: 4t
Thực hành: 4t
Chương 2. Câu lệnh SQL
2- 2/46
MỤC TIÊU

Viết được cú pháp lệnh SELECT.

Câu lệnh Select có điều kiện và sắp xếp dữ liệu.

Viết được câu lệnh select lấy dữ liệu từ nhiều bảng.

Áp dụng câu lệnh select giải quyết bài toán cụ thể.

Đánh giá và so sánh câu lệnh select với cách lọc dữ
liệu trong Excel.
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 3/46
2.1 Giới thiệu

Chiết xuất dữ liệu từ cơ sở dữ liệu

câu lệnh SELECT

Giới hạn dữ liệu hiển thị sau khi truy vấn

Môi trường làm việc của iSQL*Plus


Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 4/46
2.2 Câu lệnh SELECT cơ bản

truy xuất dữ liệu từ một hay nhiều bảng, khung nhìn

Cú pháp
Câu lệnh SQL
SELECT *|[DISTINCT] column|expression [alias],
FROM table;
Trong đó:
* Lấy tất các các cột trong bảng
DISTINCT Loại bỏ sự trùng lặp các dòng dữ liệu
FROM table Bắt buộc phải có
Chương 2. Câu lệnh SQL
2- 5/46
2.2 Câu lệnh SELECT cơ bản

Ý nghĩa
Chọn lọc những mẫu tin theo những cột quy định
(column) hay những biểu thức (expression) cho cột
đó.

Ví dụ:
SELECT *
FROM Emp;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 6/46

2.2 Câu lệnh SELECT cơ bản

Chọn tất cả các cột
SELECT * FROM Dept;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 7/46
2.2 Câu lệnh SELECT cơ bản

Chọn cột chỉ định
SELECT DeptId DEPARTMENT_ID,
DeptName DEPARTMENT_NAME
FROM Dept;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 8/46
2.3 Viết câu lệnh SQL

Quy tắc viết lệnh

không phân biệt chữ viết hoa hay thường.

một câu lệnh có thể trên nhiều dòng.

từ khoá không được viết tắt, nhiều dòng.

sử dụng các các phép toán: +, -, \, *, để
biểu diễn giá trị trong câu lệnh.

kết thúc lệnh bởi dấu chấm phẩy (;)

Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 9/46
2.3 Viết câu lệnh SQL

Các thành phần trong câu lệnh

Biểu thức toán học

Ví dụ:
SELECT Name, Sal *12 FROM Emp;

Tiêu đề của cột (column alias)

Ví dụ: (ANUAL chính là column alias)
SELECT Name, Sal*12 ANNUAL FROM Emp;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 10/46
2.3 Viết câu lệnh SQL

Các thành phần trong câu lệnh

Ghép tiếp các cột dữ liệu

Ví dụ
SELECT No||Name EmpLoyee FROM Emp;

Ghép tiếp chuỗi ký tự


Ví dụ:
SELECT Name || ‘WORK IN’ || DeptNo FROM Emp;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 11/46
2.3 Viết câu lệnh SQL

Các thành phần trong câu lệnh

Loại bỏ giá trị dữ liệu trùng lặp

Ví dụ
SELECT DISTINCT DeptNo FROM Dept;

Giá trị rỗng (NULL)
cột chưa được gán giá trị
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 12/46
2.3 Viết câu lệnh SQL

Hàm NVL
NVL (Expr1, Expr2);

Thay thế một giá trị NULL bởi một giá trị khác NULL

Nếu Expr1 là giá trị NULL thì NVL trả về Expr2

Nếu Expr1 khác NULL thì NVL trả về Expr1


Ví dụ:
SELECT Sal*12 + NVL(comm, 0) ANUAL FROM Emp;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 13/46
2.4 Tương tác giữa SQL và iSQL*Plus

SQL*Plus cho phép tương tác trực tiếp với Oracle
Server thông qua các câu lệnh SQL và PL/SQL
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 14/46
2.4 Tương tác giữa SQL và iSQL*Plus

Khác biệt giữa lệnh SQL và SQL*Plus
Câu lệnh SQL
Không thao tác với dữ
liệu trong cơ sở dữ liệu
Thao tác trên các dữ liệu có
trong các bảng đã được định
nghĩa trong cơ sở dữ liệu
Tùy thuộc vào từng phiên
bản của Oracle
Câu lệnh dựa trên bộ ký tự
chuẩn ASCII
Nhận dạng lệnh SQL và
gửi lệnh lên
Server
Là ngôn ngữ để giao tiếp với
Oracle Server trong việc truy

xuất dữ liệu.
SQL*PlusSQL
Chương 2. Câu lệnh SQL
2- 15/46
2.4 Tương tác giữa SQL và iSQL*Plus

Khác biệt giữa lệnh SQL và SQL*Plus
Câu lệnh SQL
Sử dụng các lệnh định dạng
dữ liệu của chính SQL*Plus
Sử dụng các hàm trong việc
định dạng dữ liệu
Không đòi hỏi phải có ký tự
kết thúc lệnh
Có sử dụng ký tự kết thúc
lệnh khi thực hiện
Câu lệnh có thể viết tắtCâu lệnh không được viết tắt
Câu lệnh được tải trực tiếp
không thông qua bộ đệm
Câu lệnh được nạp vào bộ
nhớ đệm trên một hoặc nhiều
dòng
SQL*PlusSQL
Chương 2. Câu lệnh SQL
2- 16/46
2.4 Tương tác giữa SQL và iSQL*Plus

Phân nhóm câu lệnh trong SQL*Plus
Câu lệnh SQL
Gửi các lệnh SQL có trong bộ đệm lên

server
Thực hiện lệnh
Lưu giữ, nạp và chạy các file scriptsThao tác file
Định dạng lại dữ liệu trả về từ server
Định dạng dữ
liệu
Tác động và gây ảnh hưởng tới môi
trường làm việc của SQL*Plus trong
phiên làm việc hiện tại
Môi trường
Diễn giảiNhóm lệnh
Chương 2. Câu lệnh SQL
2- 17/46
2.4 Tương tác giữa SQL và iSQL*Plus

Phân nhóm câu lệnh trong SQL*Plus
Câu lệnh SQL
Các lệnh khác cho phép kết nối tới cơ sở dữ
liệu và hiển thị các cột dữ liệu theo như định
dạng
Các lệnh
khác
Cho phép người dùng có thể tạo các biến sử
dụng trong câu lệnh SQL và thao tác với các
biến đó như: nhập dữ liệu, kết xuất dữ liệu
Tương tác
Sửa đổi lại lệnh SQL có trong bộ đệmSoạn thảo
Diễn giảiNhóm lệnh
Chương 2. Câu lệnh SQL
2- 18/46

2.4 Tương tác giữa SQL và iSQL*Plus

Các lệnh SQL*Plus cơ bản

Kết nối tới cơ sở dữ liệu
Conn[ect] <user_name>/
<password>[@<database>];

Ví dụ:
Conn Tester/pwtester@DB1;
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 19/46
2.4 Tương tác giữa SQL và iSQL*Plus

Các lệnh SQL*Plus cơ bản

Hiển thị cấu trúc bảng dữ liệu
Desc[ribe] <table_name>;

Ví dụ: Desc Dept;
Câu lệnh SQL
Name Null? Type
DeptNo NOT NULL NUMBER(2)
DNAME VARCHAR2(14)
LOC
VARCHAR2(13)
Chương 2. Câu lệnh SQL
2- 20/46
2.4 Tương tác giữa SQL và iSQL*Plus


Các lệnh sau đây tự xem sách!

Lệnh soạn thảo

Lệnh thao tác file

Lệnh định dạng cột dữ liệu
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 21/46
2.4 Tương tác giữa SQL và iSQL*Plus

Các ký tự định dạng
Câu lệnh SQL
1,234 9,999 Hiển thị dấu phân chia hàng nghìn
,
1234.00 9999.99 Hiển thị dấu thập phân
.
L1234 L9999 Hiển thị ký tự L L
$1234 $9999 Hiển thị dấu $ $
01234 099999 Hiển thị cả số 0 0
1234 999999 Hiển thị số, không bao gồm số 0 9
Hiển thị dài nhất n ký tựn
Kết quảVí dụDiễn giảiĐịnh
dạng
Chương 2. Câu lệnh SQL
2- 22/46
2.4 Tương tác giữa SQL và iSQL*Plus


Đăng nhập iSQL*Plus

Khởi động trình duyệt web (web browser).

Nhập địa chỉ URL của môi trường làm việc iSQL*Plus.

Nhập username, password và trường định danh kết
nối Oracle.
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 23/46
2.5 Môi trường làm việc iSQL*Plus

Đăng nhập iSQL*Plus
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 24/46
2.6 Giới hạn và sắp xếp dữ liệu
Giới hạn dữ liệu
Câu lệnh SQL
Chương 2. Câu lệnh SQL
2- 25/46
2.6 Giới hạn và sắp xếp dữ liệu
Giới hạn dữ liệu

Mệnh đề WHERE
đặt điều kiện cho toàn bộ câu lệnh truy vấn.
SELECT [DISTINCT ] *, column [alias],
FROM table
[WHERE condition (s)];

Câu lệnh SQL

×