Một số câu lệnh, mệnh đề, toán tử, từ khóa trong cơ sở dữ liệu MySQL

Hôm nay TKS xin giới thiệu sơ lược một số câu lệnh, mệnh đề, toán tử, từ khóa trong cơ sở dữ liệu MySQL

– Câu lệnh SELECT

Câu lệnh SELECT được dùng để truy xuất dữ liệu từ một bảng. Kết quả trả về dưới dạng bảng được lưu trong 1 bảng, gọi là bảng kết quả – result table (còn được gọi là tập kết quả – result set).

Cú pháp của câu lệnh SELECT như sau:

SELECT tên_các_cột
FROM tên_bảng

Ví dụ, để truy xuất các cột mang tên LastName và FirstName từ một bảng có tên là Persons, ta dùng một câu lệnh SELECT như sau:

SELECT LastName, FirstName FROM Persons

Ta có thể dùng dấu * để thay thế cho tất cả các cột:
SELECT * FROM Persons
Kết quả trả về từ một câu truy vấn SQL được lưu trong 1 tập kết quả (result set). Tập kết quả này sau đó sẽ được lập trình viên tìm cách đưa ra dưới dạng một bảng hoặc một hình thức nào đó

– Mệnh đề WHERE

Mệnh đề WHERE được dùng để thiết lập điều kiện truy xuất.
Để truy xuất dữ liệu trong bảng theo các điều kiện nào đó, một mệnh đề WHERE có thể được thêm vào câu lệnh SELECT.
Cú pháp mệnh đề WHERE trong câu lệnh SELECT như sau:

SELECT tên_cột FROM tên_bảng
WHERE tên_cột phép_toán giá_trị

Trong mệnh đề WHERE, các phép toán được sử dụng là

Phép toán      Mô tả
=               So sánh bằng
<>             So sánh không bằng
>               Lớn hơn
<               Nhỏ hơn
>=             Lớn hơn hoặc bằng
<=             Nhỏ hơn hoặc bằng
BETWEEN    Nằm giữa một khoảng
LIKE           So sánh mẫu chuỗi

Lưu ý: Trong một số phiên bản của SQL, phép toán <> có thể được viết dưới dạng !=

Ví dụ để lấy danh sách những người sống ở thành phố hanoi, ta sử dụng mệnh đề WHERE trong câu lệnh SELECT như sau:

SELECT * FROM Persons
WHERE City = ‘hanoi’

– Tóan tử AND và OR

Hai toán tử AND và OR nối hai hoặc nhiều điều kiện trong mệnh đề WHERE lại với nhau.
Toán tử AND sẽ hiển thị 1 dòng nếu TẤT CẢ các điều kiện đều thoả mãn. Toán tử OR hiển thị một dòng nếu BẤT KỲ điều kiện nào được thoả.

Ví dụ: Sử dụng AND để tìm những người có tên là A và họ là B:

SELECT * FROM Persons
WHERE FirstName = ‘A’
AND LastName = ‘B’

Ví dụ: Sử dụng OR để tìm những người có tên là A hoặc họ là B:

SELECT * FROM Persons
WHERE firstname = ‘A’
OR lastname = ‘B’

Ví dụ: Sử dụng kết hợp AND và OR cùng với dấu ngoặc đơn để tạo nên các câu truy vấn phức tạp:

SELECT * FROM Persons WHERE
(FirstName = ‘A’ OR FirstName = ‘B’)
AND LastName = ‘C’

– Từ khoá DISTINCT

Từ khoá DISTINCT được dùng để lọc ra các giá trị khác nhau.

Câu lệnh SELECT sẽ trả về thông tin về các cột trong bảng. Nhưng nếu chúng ta không muốn lấy về các giá trị trùng nhau thì sau?

Với SQL, ta chỉ cần thêm từ khoá DISTINCT vào câu lệnh SELECT theo cú pháp sau:

SELECT DISTINCT tên_cột FROM tên_bảng

Ví dụ: Tìm tất cả các công ty trong bảng đặt hàng, câu lệnh SQL thông thường sẽ như sau:

SELECT Company FROM Orders

Để tìm tất cả các công ty khác nhau trong bảng đặt hàng, ta sử dụng câu lệnh SQL sau:

SELECT DISTINCT Company FROM Orders

– Mệnh đề ORDER BY:
Mệnh đề ORDER BY được dùng để sắp xếp các dòng.
Cú pháp: Select….. ORDER BY tên các cột [ASC/DESC]
ORER BY có thể đi kèm từ khóa DESC để sắp xếp theo chiều giảm dần, hoặc ASC để sắp xếp theo chiều tăng dần của các cột

Ví dụ: Để lấy danh sách các công ty theo thứ tự chữ cái (tăng dần):

SELECT Company, OrderNumber FROM Orders
ORDER BY Company

Ví dụ 2: Lấy danh sách các công ty theo thứ tự chữ cái (tăng dần) và hoá đơn đặt hàng theo thứ tự số tăng dần:

SELECT Company, OrderNumber FROM Orders
ORDER BY Company, OrderNumber

Ví dụ 3: Lấy danh sách các công ty theo thứ tự giảm dần:

SELECT Company, OrderNumber FROM Orders
ORDER BY Company DESC

(Nếu ORDER BY không viết DESC hay ASC thì có nghĩa nó đang sắp xếp tăng dần)

FOLLOW US
No Responses

Leave a Reply

Your email address will not be published. Required fields are marked *