Các câu lệnh truy vấn nâng cao trong MySQL

Tiếp theo phần tìm hiểu về MySQL thì Team Việt Dev sẽ giải thích cách sử dụng các câu lệnh truy vấn nâng cao trong MySQL với cú pháp và ví dụ minh họa trực quan sao cho dễ hiểu nhất.

Phần sau tổng hợp các câu lệnh truy vấn cơ bản trong MySQL như lệnh mệnh đề DISTINCT, mệnh đề LIKE, mệnh đề ORDER BY, mệnh đề GROUP BY và mệnh đề ALIASES.

Các câu lệnh truy vấn nâng cao trong MySQL

1. Từ khóa DISTINCT trong MySQL

Mệnh đề DISTINCT trong MySQL được sử dụng để loại bỏ các dữ liệu trùng lặp từ câu lệnh SELECT.

Cú pháp cho mệnh đề DISTINCT trong MySQL là:

SELECT DISTINCT expressions
FROM tables
[WHERE conditions];

Ví dụ sử dụng mệnh đề DISTINCT trong MySQL:

SELECT DISTINCT site_name
FROM sites;

2. Từ khóa LIKE trong MySQL

Mệnh đề LIKE trong MySQL được dùng trong mệnh đề WHERE để tìm kiếm một mẫu chỉ định trong một cột.

Cú pháp cho điều kiện LIKE trong MySQL là:

expression LIKE pattern [ ESCAPE 'escape_character' ]

Ví dụ mệnh đề LIKE trong MySQL :

SELECT site_id, site_name
FROM sites
WHERE site_name LIKE 'TeamVietDev';

Bạn cũng có thể sử dụng % để tìm tất cả các dữ liệu bắt đầu bằng một chuỗi:

SELECT site_id, site_name
FROM sites
WHERE site_name LIKE 'Team%';

Bạn cũng có thể sử dụng % để tìm tất cả các dữ liệu kết thúc bằng một chuỗi:

SELECT site_id, site_name
FROM sites
WHERE site_name LIKE '%Team';

Hoặc bạn cũng có thể sử dụng % nhiều lần trong cùng một chuỗi:

SELECT site_id, site_name
FROM sites
WHERE site_name LIKE '%TeamVietDev%';

3. Từ khóa ORDER BY trong MySQL

Mệnh đề ORDER BY trong MySQL được sử dụng để sắp xếp các bản ghi trong tập kết quả được trả về.

Cú pháp cho mệnh đề ORDER BY trong MySQL là:

SELECT expressions
FROM tables
[WHERE conditions]
ORDER BY expression [ ASC | DESC ];

Lưu ý:

  • ASC sẽ sắp xếp kết quả được đặt theo thứ tự tăng dần (mặc định).
  • DESC sẽ sắp xếp kết quả được đặt theo thứ tự giảm dần.

Ví dụ mệnh đề ORDER BY trong MySQL:

SELECT site_id, site_name 
FROM sites 
WHERE site_name = 'TeamVietDev.com' 
ORDER BY site_id DESC;

Khi sắp xếp kết quả của bạn trong MySQL, bạn bị giới hạn chỉ phân loại theo thứ tự tăng dần hoặc thứ tự giảm dần, bạn sử dụng kết hợp các thuộc tính ASC và DESC trong truy vấn của bạn.

SELECT site_id, site_name 
FROM sites
WHERE site_name = 'TeamVietDev.com' 
ORDER BY site_name DESC, site_url ASC;

4. Từ khóa GROUP BY trong MySQL

Mệnh đề GROUP BY trong MySQL được sử dụng trong câu lệnh SELECT để thu thập dữ liệu trên nhiều bản ghi và nhóm các kết quả theo một hoặc nhiều cột.

Cú pháp cho mệnh đề GROUP BY trong MySQL là:

SELECT expression1, expression2, ... expression_n, 
       aggregate_function (expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, ... expression_n;

Ví dụ mệnh đề GROUP BY trong MySQL:

SELECT site_domain, COUNT(site_id)
FROM sites
GROUP BY site_domain

5. Từ khóa ALIASES trong MySQL

Mệnh đề ALIASES trong MySQL có thể được sử dụng để tạo một tên tạm thời cho các cột hoặc bảng.

Cú pháp gán bí danh một cột trong MySQL là:

column_name [ AS ] alias_name

Cú pháp gán bí danh cho một bảng trong MySQL là:

table_name [ AS ] alias_name

Ví dụ khi sử dụng hàm COUNT bạn có thể gán kết quả của hàm COUNT:

SELECT site_domain, COUNT(site_id) AS total_domain
FROM sites
GROUP BY site_domain

Ví dụ về gán bí danh tên bảng trong MySQL:

SELECT p.product_serial, p.product_name, p.product_price
FROM categorys c
INNER JOIN products p ON c.category_id = p.category_id
WHERE c.category_serial LIKE 'Nokia'

Lời kết: Trong thời gian tới Team Việt Dev sẽ tiếp tục chia sẻ thêm nhiều bài viết về chuyên mục MySQL miễn phí đến bạn đọc, các bạn nhớ theo dõi kênh để có được những chia sẻ mới nhất.

(Tác giả: Team Việt Dev)

Bình luận