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
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 (;)
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
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
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
Đă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)];