ALIAS trong SQL Server

ALIASES trong SQL Server được dùng để tạo tên tạm thời (gọi là bí danh) cho cột hoặc bảng.

  • COLUMN ALIASES được dùng để tạo tiêu đề cột trong kết quả cho dễ nhìn
  • TABLE ALIASES được dùng để rút ngắn SQL cho dễ đọc hơn hoặc khi cần tự kết nối (ví dụ như liệt kê cùng 1 bảng nhiều hơn 1 lần trong mệnh đề FROM).

Cú pháp đặt bí danh ALIASES

Cú pháp đặt bí danh cho cột

ten_cot [ AS ] bi_danh

hoặc đặt bí danh cho bảng

ten_bang [ AS ] bi_danh

Tên biến hoặc giá trị biến

ten_cot

tên ban đầu của cột mà bạn muốn đặt bí danh

ten_bang

tên ban đầu của bảng mà bạn muốn đặt bí danh

AS

tùy chọn. Hầu hết lập trình viên dùng từ khóa AS khi đặt bí danh cho cột nhưng không dùng khi đặt cho bảng. Dù có dùng hay không thì cũng không ảnh hưởng tới bí danh trong MySQL. Không như các cơ sở dữ liệu khác, đây là lựa chọn tùy ý trong MySQL. (Các ví dụ dưới đây sẽ dùng AS khi đặt bí danh cho cột và bỏ AS khi đặt cho bảng).

bi_danh

tên tạm thời đặt cho cột hay bảng.

Lưu ý

  • Nếu bi_danh có chứa khoảng trắng thì phải đặt trong dấu trích dẫn.
  • Có thể dùng khoảng trắng khi đặt bí danh cho cột. Nhưng thường thì không dùng khoảng trắng khi đặt cho bảng.
  • Tên bi_danh chỉ có hiệu lực trong các câu lệnh của SQL.

Ví dụ – đặt bí danh cho cột

Thường bí danh được dùng để tạo tiêu đề cột trong kết quả cho dễ nhìn.

SELECT nhanvien_id, ten + ho AS NAME  FROM nhanvien WHERE ten = Sarah’;

Ở ví dụ này, chúng ta đặt bí danh cho cột thứ 2 (tức kết hợp họ và tên) là NAME. Trong kết quả, NAME sẽ là tiêu đề của cột thứ 2. Vì bi_danh nói trên không có khoảng trống nên không cần đặt trong dấu trích dẫn. Nhưng nếu muốn thì dùng dấu này cũng được.

SELECT nhanvien_id, ten + ho AS NAME FROM nhanvien WHERE ten = Sarah’;

Đây là ví dụ khác cần đặt bi_danh trong dấu trích dẫn.

SELECT nhanvien_id, ten + ho AS TEN NHAN VIEN FROM nhanvien  WHERE ten = Sarah’;

Ở ví dụ này, cột thứ 2 trong kết quả được đặt là TEN NHAN VIEN.

Ví dụ – đặt bí danh cho bảng

Đặt bí danh cho bảng có thể là dùng để liệt kê bảng nhiều hơn 1 lần trong mệnh đề FROM (hay gọi là tự kết nối) hoặc rút ngắn tên bảng để dễ đọc hơn.

SELECT s.sanpham_ten, hangtonkho.chatluong FROM sanpham s INNER JOIN hangtonkho ON s.sanpham_id = hangtonkho.sanpham_id ORDER BY s.tsanpham_ten ASC, hangtonkho.chatluong DESC;

Ví dụ trên tạo bí danh cho bảng sanpham là s. Bây giờ trong câu lệnh SQL, có thể gọi bảng sanpham là s. Khi tạo bí danh bảng, không cần thiết phải tạo bí danh cho tất cả các bảng được đưa ra trong mệnh đề FROM. Ví dụ như tạo bí danh cho cả bảng hangtonkho như dưới đây.

SELECT s.sanpham_ten, h.chatluong FROM sanpham s INNER JOIN hangtonkho h  ON s.sanpham_id = h.sanpham_id ORDER BY s.sanpham_ten ASC, h.chatluong DESC;

Bảng hangtonkho được gọi là h còn bảng sanpham thì được gọi là s.