1. Giới thiệu
SQL Aliases (bí danh) là một công cụ giúp bạn đặt tên tạm thời cho bảng hoặc cột trong các truy vấn SQL. Aliases giúp làm cho truy vấn dễ đọc hơn, đơn giản hóa việc xử lý dữ liệu và giảm độ dài của các tên bảng hoặc cột. Thông thường, aliases được sử dụng trong các truy vấn phức tạp hoặc khi kết hợp nhiều bảng với nhau.
Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng MySQL Aliases cho cột và bảng, kèm theo các ví dụ thực tế để giúp bạn hiểu rõ hơn về công dụng của chúng.
2. Cú pháp MySQL Aliases
a. Aliases cho cột
Bạn có thể sử dụng AS để tạo bí danh cho một cột trong kết quả truy vấn. Khi bạn sử dụng bí danh, nó sẽ thay thế tên cột ban đầu trong kết quả trả về của truy vấn.
Cú pháp:
SELECT column_name AS alias_name
FROM table_name;b. Aliases cho bảng
Tương tự, bạn cũng có thể sử dụng AS để tạo bí danh cho bảng. Điều này giúp bạn dễ dàng tham chiếu tới bảng đó hơn trong các truy vấn phức tạp, đặc biệt khi kết hợp nhiều bảng với nhau (JOIN).
Cú pháp:
SELECT column1, column2
FROM table_name AS alias_name;Lưu ý: Từ khóa AS là tùy chọn. Bạn có thể sử dụng bí danh mà không cần từ khóa AS.
3. Bảng dữ liệu giả định
Giả sử chúng ta có hai bảng employees và departments như sau:
Bảng employees:
| employee_id | first_name | last_name | department_id | salary |
|---|---|---|---|---|
| 1 | John | Doe | 1 | 1500000 |
| 2 | Jane | Smith | 2 | 1700000 |
| 3 | Bob | Johnson | 1 | 1300000 |
| 4 | Alice | Brown | 3 | 2000000 |
| 5 | Charlie | Green | 2 | 1800000 |
Bảng departments:
| department_id | department_name |
|---|---|
| 1 | Sales |
| 2 | Marketing |
| 3 | HR |
4. Sử dụng Aliases cho cột
a. Đặt bí danh cho cột
Khi bạn muốn hiển thị cột với tên dễ hiểu hơn trong kết quả trả về, bạn có thể sử dụng Aliases để đổi tên cột tạm thời.
Ví dụ 1: Đặt bí danh cho cột first_name và last_name
SELECT first_name AS 'First Name', last_name AS 'Last Name', salary AS 'Employee Salary'
FROM employees;Kết quả:
| First Name | Last Name | Employee Salary |
|---|---|---|
| John | Doe | 1500000 |
| Jane | Smith | 1700000 |
| Bob | Johnson | 1300000 |
| Alice | Brown | 2000000 |
| Charlie | Green | 1800000 |
Trong ví dụ này, tên các cột first_name, last_name, và salary đã được thay thế bằng các bí danh dễ hiểu hơn trong kết quả.
b. Sử dụng phép tính và đặt bí danh
Bạn có thể sử dụng phép tính trong các truy vấn và đặt bí danh cho kết quả tính toán.
Ví dụ 2: Tính thu nhập hàng năm cho từng nhân viên và đặt bí danh cho cột
SELECT first_name, last_name, salary * 12 AS 'Annual Salary'
FROM employees;Kết quả:
| first_name | last_name | Annual Salary |
|---|---|---|
| John | Doe | 18000000 |
| Jane | Smith | 20400000 |
| Bob | Johnson | 15600000 |
| Alice | Brown | 24000000 |
| Charlie | Green | 21600000 |
Trong ví dụ này, chúng ta đã tính lương hàng năm của nhân viên và sử dụng bí danh để đổi tên cột kết quả thành "Annual Salary".
5. Sử dụng Aliases cho bảng
Aliases cho bảng đặc biệt hữu ích khi bạn làm việc với nhiều bảng và cần giảm độ dài tên bảng để làm cho truy vấn dễ đọc hơn.
a. Đặt bí danh cho bảng
Ví dụ 3: Sử dụng Aliases cho bảng để rút gọn câu lệnh
SELECT e.first_name, e.last_name, d.department_name
FROM employees AS e
JOIN departments AS d ON e.department_id = d.department_id;Kết quả:
| first_name | last_name | department_name |
|---|---|---|
| John | Doe | Sales |
| Jane | Smith | Marketing |
| Bob | Johnson | Sales |
| Alice | Brown | HR |
| Charlie | Green | Marketing |
Trong ví dụ này, chúng ta đã tạo bí danh e cho bảng employees và bí danh d cho bảng departments. Điều này giúp rút ngắn truy vấn và dễ đọc hơn khi tham chiếu các cột từ hai bảng.
b. Sử dụng bí danh khi có nhiều bảng cùng cột
Khi hai bảng có cùng tên cột, việc sử dụng bí danh là cách duy nhất để phân biệt các cột đó.
Ví dụ 4: Phân biệt cột department_id trong bảng employees và departments
SELECT e.first_name, e.last_name, e.department_id AS 'Employee Department ID', d.department_id AS 'Department ID'
FROM employees AS e
JOIN departments AS d ON e.department_id = d.department_id;Kết quả:
| first_name | last_name | Employee Department ID | Department ID |
|---|---|---|---|
| John | Doe | 1 | 1 |
| Jane | Smith | 2 | 2 |
| Bob | Johnson | 1 | 1 |
| Alice | Brown | 3 | 3 |
| Charlie | Green | 2 | 2 |
Trong ví dụ này, chúng ta đã sử dụng bí danh để phân biệt hai cột department_id từ hai bảng khác nhau (employees và departments).
6. Các ví dụ về MySQL Aliases
Ví dụ 1: Đặt bí danh cho cột trong truy vấn
SELECT first_name AS 'First Name', last_name AS 'Last Name', salary * 12 AS 'Annual Salary'
FROM employees;Ví dụ 2: Đặt bí danh cho bảng khi JOIN hai bảng
SELECT e.first_name, e.last_name, d.department_name
FROM employees AS e
JOIN departments AS d ON e.department_id = d.department_id;Ví dụ 3: Sử dụng bí danh cho các phép tính
SELECT first_name, last_name, salary * 12 AS 'Annual Salary'
FROM employees;Ví dụ 4: Sử dụng bí danh để rút ngắn tên bảng khi JOIN nhiều bảng
SELECT e.first_name, e.last_name, d.department_name
FROM employees AS e
JOIN departments AS d ON e.department_id = d.department_id;7. Một số lưu ý khi sử dụng MySQL Aliases
a. Sử dụng từ khóa AS hay không?
Việc sử dụng từ khóa AS là tùy chọn trong SQL. Bạn có thể bỏ qua từ khóa này và chỉ sử dụng bí danh trực tiếp. Tuy nhiên, sử dụng AS giúp làm rõ rằng đây là bí danh.
Ví dụ:
SELECT first_name 'First Name', last_name 'Last Name'
FROM employees;Câu lệnh trên sẽ hoạt động tương tự như sử dụng AS.
b. Aliases chỉ tồn tại trong truy vấn
Bí danh chỉ tồn tại tạm thời trong truy vấn và không thay đổi tên thực sự của bảng hoặc cột trong cơ sở dữ liệu.
c. Aliases không phân biệt chữ hoa, chữ thường
MySQL không phân biệt chữ hoa và chữ thường trong việc sử dụng aliases. Ví dụ, AS FirstName và AS firstname được coi là giống nhau.
Kết luận
SQL Aliases là một công cụ mạnh mẽ giúp bạn đặt tên tạm thời cho cột và bảng, giúp truy vấn trở nên ngắn gọn, dễ đọc và dễ quản lý hơn. Aliases đặc biệt hữu ích khi làm việc với các truy vấn phức tạp hoặc khi kết hợp nhiều bảng.
Hãy thử áp dụng các ví dụ này trong các bài tập và dự án thực tế trên CodeTutHub để thành thạo hơn về cách sử dụng SQL Aliases trong MySQL!








