1. Giới thiệu
MySQL AS được dùng để gán bí danh (tên thay thế) cho các bảng và cột trong một truy vấn.
Tính năng này không chỉ cải thiện khả năng đọc của câu lệnh SQL mà còn giúp diễn đạt các truy vấn phức tạp một cách ngắn gọn hơn.
Trong bài viết này, chúng tôi sẽ giải thích mọi thứ từ cách sử dụng cơ bản của AS đến các ví dụ thực tế và các lưu ý quan trọng.
Để người mới bắt đầu có thể dễ dàng hiểu khái niệm, chúng tôi sẽ đưa vào các ví dụ mã nguồn rõ ràng và cụ thể xuyên suốt.
2. Cách sử dụng cơ bản của từ khóa “AS”
2.1. Gán bí danh cho một cột
Trong MySQL, bạn có thể gán một bí danh cho cột để sử dụng tên cột mô tả hơn hoặc dễ đọc hơn.
Cú pháp cơ bản như sau:
SELECT column_name AS alias_name FROM table_name;
Ví dụ
Ví dụ, nếu bạn muốn nối first_name và last_name từ bảng users và gán bí danh full_name:
SELECT first_name, last_name, CONCAT(first_name, ' ', last_name) AS full_name FROM users;
Khi bạn thực thi câu lệnh SQL này, một cột có tên full_name sẽ được tạo ra, hiển thị giá trị kết hợp của first_name và last_name.
2.2. Gán bí danh cho một bảng
Bạn cũng có thể gán bí danh cho các bảng.
Điều này cho phép bạn rút ngắn tên bảng dài và cải thiện khả năng đọc của các truy vấn phức tạp.
Cú pháp cơ bản như sau:
SELECT t1.column_name FROM table_name AS t1;
Ví dụ
Ví dụ, để gán bí danh e cho bảng employees:
SELECT e.id, e.name FROM employees AS e;
Bằng cách này, bạn có thể viết các câu lệnh SQL ngắn gọn hơn bằng cách sử dụng e thay vì employees.

3. Tại sao nên dùng từ khóa “AS”?
3.1. Cải thiện khả năng đọc của truy vấn
Việc sử dụng AS làm cho các truy vấn dễ hiểu hơn một cách trực quan.
Nó đặc biệt hữu ích khi tên cột dài hoặc khi xử lý các kết quả tính toán dưới dạng cột.
3.2. Tránh mơ hồ khi JOIN nhiều bảng
Khi sử dụng JOIN, nếu cùng một tên cột tồn tại trong nhiều bảng, có thể xảy ra sự mơ hồ.
Trong những trường hợp như vậy, việc gán bí danh cho các bảng giúp ngăn ngừa sự nhầm lẫn.
SELECT e.name, d.department_name FROM employees AS e JOIN departments AS d ON e.department_id = d.id;
Trong truy vấn này, bảng employees được rút ngắn thành e, và bảng departments được rút ngắn thành d, làm cho truy vấn dễ đọc hơn.
3.3. Gán bí danh cho các cột tính toán hoặc kết quả hàm
Bằng cách gán bí danh cho kết quả tính toán hoặc đầu ra của hàm trong SQL, bạn có thể tạo ra đầu ra rõ ràng và dễ hiểu hơn.
SELECT price * quantity AS total_cost FROM orders;
Trong truy vấn này, kết quả của price * quantity được đặt tên mô tả là total_cost.
4. Các ví dụ thực tế
4.1. Sử dụng “AS” trong các JOIN đa bảng
Khi JOIN các bảng khác nhau, việc gán bí danh giúp rút ngắn và đơn giản hoá truy vấn.
SELECT u.id, u.name, o.order_date
FROM users AS u
JOIN orders AS o ON u.id = o.user_id;
Trong ví dụ này, bảng users được định nghĩa là u, và bảng orders được định nghĩa là o, loại bỏ các mô tả dư thừa.
4.2. Gán bí danh cho kết quả tính toán
Khi tính tổng số tiền, việc gán bí danh giúp đầu ra dễ hiểu hơn.
SELECT product_name, price * quantity AS total_price FROM sales;
Kết quả là, cột total_price chứa giá trị tính toán của price * quantity.
5. Lưu ý quan trọng
5.1. “AS” là tùy chọn, nhưng nên sử dụng rõ ràng
Trong MySQL, có thể bỏ qua AS. Tuy nhiên, để cải thiện khả năng đọc và bảo trì, nên viết nó một cách rõ ràng.
SELECT first_name full_name FROM users; -- AS can be omitted
SELECT first_name AS full_name FROM users; -- Recommended
5.2. Sử dụng từ khóa đặt trước làm bí danh
Nếu bạn sử dụng một từ khóa SQL đặt trước làm bí danh, bạn phải bao quanh nó bằng dấu backticks.
SELECT column_name AS `key` FROM table_name;
6. Câu hỏi thường gặp (FAQ)
Q1: Có được phép bỏ qua “AS” không?
A1: Có, có thể bỏ qua. Tuy nhiên, để tăng khả năng đọc, nên sử dụng nó một cách rõ ràng.
Q2: Tôi có thể gán cùng một bí danh cho cả bảng và cột không?
A2: Để tránh nhầm lẫn, tốt nhất nên dùng các bí danh khác nhau cho bảng và cột.
Q3: Bí danh có thể chứa khoảng trắng không?
A3: Có, có thể, nhưng bạn phải bao quanh nó bằng dấu ngoặc kép "" hoặc dấu backticks.
SELECT column_name AS "My Custom Name" FROM table_name;
Q4: Tôi có thể dùng “AS” để tạo bảng tạm không?
A4: Từ khóa AS không được sử dụng độc lập để tạo bảng tạm.
Để tạo bảng tạm, hãy dùng CREATE TEMPORARY TABLE.
CREATE TEMPORARY TABLE temp_table AS SELECT * FROM original_table;
Q5: Tôi có thể dùng “AS” để tạo view không?
A5: Có. Khi tạo view, bạn có thể dùng AS để định nghĩa truy vấn của view.
CREATE VIEW sales_summary AS
SELECT product_name, SUM(price * quantity) AS total_sales FROM sales GROUP BY product_name;
7. Tóm tắt
Trong bài viết này, chúng tôi đã giải thích chi tiết từ khóa MySQL AS.
Các điểm chính như sau:
- Sử dụng
AScho phép bạn gán các bí danh rõ ràng và mô tả cho cột và bảng. - Nó cải thiện khả năng đọc của truy vấn và làm cho SQL dễ hiểu hơn.
- Khi sử dụng các từ khóa được đặt trước làm bí danh, bạn phải bao quanh chúng bằng dấu backticks.
Từ khóa AS là một tính năng rất hữu ích khi làm việc với MySQL.
Hãy sử dụng nó một cách hiệu quả để viết các truy vấn SQL sạch sẽ, hiệu quả và dễ đọc!


