Chuyển đến nội dung chính

Cách dùng SQL alias để đơn giản hóa truy vấn của bạn

Tìm hiểu cách dùng SQL alias để đơn giản hóa tên cột và bảng. Khám phá vì sao SQL alias là chìa khóa giúp tăng khả năng đọc và quản lý các phép join phức tạp.
· 9 phút đọc

Khám phá cùng AI

SQL alias là một tên tạm thời cho bảng hoặc cột trong truy vấn SQL. Thông thường, nó được dùng để đơn giản hóa truy vấn phức tạp bằng cách làm cho truy vấn dễ đọc hơn hoặc đơn giản là đặt cho một cột một tên thân thiện, tự nhiên hơn. Trong bài viết này, tôi sẽ trình bày các kỹ thuật khác nhau và ứng dụng thực tế của việc sử dụng SQL alias.

Trước khi bắt đầu, tôi khuyên bạn nên học khóa Introduction to SQL của DataCamp để nắm kiến thức nền tảng về SQL. SQL Basics Cheat Sheet cũng sẽ giúp bạn ôn lại các khái niệm cơ bản trong quá trình học.

SQL Alias là gì?

SQL alias giúp cải thiện khả năng đọc của truy vấn. Giả sử bạn có hai bảng, Products và Suppliers.

Ví dụ bảng Products để đổi tên cột bằng SQL alias

Ví dụ bảng Products để đổi tên cột bằng SQL alias. Hình: Tác giả.

Ví dụ bảng Suppliers để đổi tên cột bằng SQL aliasVí dụ bảng Suppliers để đổi tên cột bằng SQL alias. Hình: Tác giả.

Truy vấn sau đây sử dụng từ khóa AS để tạo alias, đổi tên một cột trong bảng Products.

-- Select the product_name column from the Products table and alias it as 'Product'
-- Select the price column from the Products table and alias it as 'Price'
SELECT product_name AS Product, 
       price AS Price
FROM Products;

Using the AS Keyword to Create a SQL Alias

SQL alias rất quan trọng khi đổi tên các cột dài hoặc khi join nhiều bảng. Cú pháp SQL alias dùng từ khóa AS để đổi tên cột hoặc bảng. Tuy nhiên, AS là tùy chọn, miễn là bạn chỉ định tên alias cho bảng hoặc cột.

Điểm tiện lợi là các hệ quản trị cơ sở dữ liệu SQL khác nhau, bao gồm MySQL, PostgreSQL và SQL Server, đều hỗ trợ đầy đủ alias cho tên bảng và cột, nên bạn không cần ghi nhớ các cách làm riêng cho từng hệ.

Ví dụ alias cho cột trong SQL

Cú pháp dưới đây minh họa alias cho cột với từ khóa AS.

SELECT column_name AS alias_name
FROM table_name;

Truy vấn dưới đây cho ra kết quả giống hệt vì từ khóa AS là tùy chọn. 

SELECT column_name alias_name
FROM table_name;

Ví dụ alias cho bảng trong SQL

Cú pháp dưới đây minh họa alias cho bảng với từ khóa AS.

SELECT column1, column2
FROM table_name AS alias_name;

Cú pháp sau minh họa alias cho bảng mà không dùng từ khóa AS.

SELECT column1, column2
FROM table_name alias_name;

Khi nào nên dùng SQL Alias

SQL alias có các ứng dụng sau.

  • Làm báo cáo và dashboard rõ ràng hơn: Alias được dùng để đổi tên cột thành các tên có ý nghĩa, giúp nâng cao mức độ hiểu báo cáo. 
  • Hỗ trợ quá trình viết mã: SQL alias đặc biệt hữu ích khi gộp cột giữa các bảng để tăng độ rõ ràng của dữ liệu.
  • Tăng cường làm việc nhóm: Việc sử dụng SQL alias giúp cộng tác trong nhóm hiệu quả hơn vì hỗ trợ xây dựng quy ước đặt tên nhất quán cho bảng và cột trong cơ sở dữ liệu.

Tôi khuyên bạn nên học khóa Reporting in SQL của DataCamp để tìm hiểu thêm về xây dựng dashboard và đưa SQL alias vào các báo cáo tương tác. Tôi cũng đề xuất lộ trình kỹ năng SQL Fundamentals để học các phương pháp SQL nâng cao, bao gồm join dữ liệu ở mức phức tạp hơn.

Ví dụ và trường hợp sử dụng SQL Alias

Các ví dụ sau cho thấy cách dùng SQL alias để đổi tên cột và bảng trong truy vấn.

Dùng SQL alias cho tên cột

SQL alias có thể dùng để đổi tên các cột. Áp dụng alias cho cột giúp truy vấn dễ đọc hơn bằng cách làm rõ các truy vấn phức tạp. Trong ví dụ dưới đây, SQL alias được dùng để đổi tên hai cột: product_name thành Product, và price thành Price.

-- Select and alias columns
SELECT product_name AS Product, 
       price AS Price
FROM Products;

Ví dụ kết quả khi dùng alias cho cột trong SQL

Ví dụ kết quả khi dùng alias cho cột trong SQL. Hình: Tác giả.

Dùng SQL alias cho tên bảng

SQL alias cũng có thể dùng để tạm đổi tên bảng. Kỹ thuật này giúp đơn giản hóa truy vấn phức tạp khi làm việc với nhiều bảng. Truy vấn dưới đây minh họa cách dùng alias cho bảng khi join hai bảng. Alias giúp truy vấn dễ đọc hơn nhờ rút ngắn tên bảng. Điều này đặc biệt hữu ích khi join hai bảng với nhau.

-- Select product names and supplier names
SELECT p.product_name, 
       s.supplier_name
-- From the Products table aliased as 'p'
FROM Products AS p
-- Join with the Suppliers table aliased as 's' on matching supplier_id
JOIN Suppliers AS s ON p.supplier_id = s.supplier_id;

Ví dụ kết quả khi dùng alias cho bảng trong SQL

Ví dụ kết quả khi dùng alias cho bảng trong SQL. Hình: Tác giả.

Hãy tuân thủ các thực hành tốt sau khi dùng alias cho bảng trong các phép join và truy vấn lồng phức tạp. Thứ nhất, hãy dùng alias ngắn gọn, có tính mô tả để tăng độ rõ ràng và dễ đọc. Thứ hai, hãy đặt tên khác nhau cho cột và bảng để tránh xung đột tên và mơ hồ.

Áp dụng nhiều SQL alias cùng lúc

Bạn có thể kết hợp alias cho cả tên cột và tên bảng trong một truy vấn. Kỹ thuật này hữu ích cho truy vấn lồng và các truy vấn phức tạp khác. Truy vấn dưới đây dùng alias cho cả cột và bảng. Nó sẽ truy xuất product_name và supplier_name cho những đối tượng ở thành phố New York.

-- Select product names from the Products table and alias as 'Product'
-- Select supplier names from the subquery and alias as 'Supplier'
SELECT p.product_name AS Product, 
       s.supplier_name AS Supplier
-- From the Products table aliased as 'p'
FROM Products p
-- Join with the subquery result aliased as 's'
JOIN (
    -- Select supplier_id and supplier_name from Suppliers table where the city is 'New York'
    SELECT supplier_id, 
           supplier_name
    FROM Suppliers
    WHERE city = 'New York'
) AS s 
-- On matching supplier_id between Products and the subquery result
ON p.supplier_id = s.supplier_id;

Các ý tưởng nâng cao về SQL Alias

Các ví dụ sau minh họa một số kỹ thuật nâng cao có liên quan đến SQL alias.

SQL alias với các hàm khác

Việc dùng SQL alias rất quan trọng khi viết các truy vấn phức tạp cần đầu ra có tính giải thích. Gán SQL alias cho dữ liệu đã biến đổi có thể liên quan đến hàm, biểu thức hoặc phép tính.

Sử dụng hàm

Truy vấn dưới đây dùng SQL alias để đổi tên một cột. Cột này cũng thay đổi vì tất cả giá trị được chuyển thành chữ hoa bằng hàm UPPER(). Hàm này không ảnh hưởng đến việc dùng từ khóa AS, dù chúng ta cũng có thể muốn thể hiện sự thay đổi bằng cách đặt tên thành supplier_uppercase.

-- Select product names from the Products table
SELECT product_name, 
       -- Convert supplier to uppercase, alias as 'supplier_uppercase'
       UPPER(supplier_name) AS supplier_uppercase
-- From the Products table aliased as 'p'
FROM Products p
-- Join with the Suppliers table aliased as 's' on matching supplier_id
JOIN Suppliers s ON p.supplier_id = s.supplier_id;

Ví dụ kết quả SQL dùng hàm cho alias động

Ví dụ kết quả SQL sử dụng hàm. Hình: Tác giả.

Sử dụng biểu thức

Truy vấn dưới đây hiển thị cột alias price_with_tax, được tính từ một phép toán trong câu lệnh SELECT.

-- Select product names from the Products table
SELECT product_name, 
       -- Select product prices from the Products table
       price, 
       -- Calculate the price with a 10% tax and alias as 'price_with_tax'
       price * 1.1 AS price_with_tax
-- From the Products table
FROM Products;

Ví dụ kết quả SQL dùng biểu thức

Ví dụ kết quả SQL dùng biểu thức. Hình: Tác giả.

Gỡ lỗi và bảo trì truy vấn

Nếu bạn có các truy vấn dùng nhiều SQL alias, hãy cân nhắc các thực hành sau để gỡ lỗi.

  • Đặt tên mỗi SQL alias một cách nhất quán và có ý nghĩa.
  • Kiểm thử các truy vấn con nhỏ trước khi kết hợp vào một truy vấn.
  • Thêm chú thích phù hợp vào các truy vấn SQL để giải thích từng tên.

Kết luận và Học thêm

Hiểu cách dùng SQL alias là một phần quan trọng trong việc viết truy vấn. Trong bài viết này, bạn đã học cách dùng alias để đổi tên cột và bảng khi tạm thời viết các truy vấn phức tạp. Tôi khuyến khích bạn tiếp tục luyện tập các tình huống khác nhau nơi bạn có thể áp dụng SQL alias để cải thiện kỹ năng.

Nếu bạn muốn học các kỹ năng SQL nâng cao, tôi khuyên bạn nên học khóa Intermediate SQL của DataCamp. Bạn cũng nên thử lộ trình nghề nghiệp Associate Data Analyst in SQL để giúp bạn trở thành một nhà phân tích dữ liệu thành thạo. Cuối cùng, tôi đặc biệt khuyến nghị lấy SQL Associate Certification của DataCamp để chứng minh khả năng ứng dụng kỹ năng SQL và nổi bật giữa các nhà khoa học dữ liệu, nhà phân tích dữ liệu khác.

Allan Ouko

Tác giả

Allan Ouko

Biên tập viên kỹ thuật về Khoa học dữ liệu với kinh nghiệm thực tế trong phân tích dữ liệu, trí tuệ doanh nghiệp và khoa học dữ liệu. Tôi viết nội dung thực tiễn, tập trung vào ngành về SQL, Python, Power BI, Databricks và kỹ thuật dữ liệu, dựa trên công việc phân tích trong thế giới thực. Bài viết của tôi kết nối chiều sâu kỹ thuật với tác động kinh doanh, giúp các chuyên gia chuyển đổi dữ liệu thành những quyết định vững chắc.

Câu hỏi thường gặp

SQL alias là gì?

SQL alias là tên tạm thời cho cột hoặc bảng trong một truy vấn. Nó được dùng để làm cho tên cột hoặc bảng dễ đọc, thuận tiện hơn.

Từ khóa AS là gì?

Từ khóa AS được dùng để tham chiếu cột hoặc bảng cần đổi tên. Từ khóa AS là tùy chọn và có thể lược bỏ trong truy vấn.

Những cơ sở dữ liệu SQL nào hỗ trợ alias?

Tất cả các hệ quản trị cơ sở dữ liệu SQL chính đều hỗ trợ alias, bao gồm SQL Server, MySQL và PostgreSQL.

Bạn có thể dùng số trong SQL alias không?

Có, bạn có thể dùng số trong SQL alias, nhưng không được bắt đầu bằng số nếu không dùng dấu nháy hoặc dấu ngoặc.

Vì sao không thể đặt alias cho cột một cách động?

Không thể đặt alias cho cột một cách động vì SQL yêu cầu tên cột phải cố định trong giai đoạn biên dịch, trong khi alias động chỉ được xác định khi thực thi. Điều này mâu thuẫn với quá trình tiền biên dịch.

Chủ đề

Liên quan