การใช้งาน Aliases ใน SQL เป็นวิธีการตั้งชื่อชั่วคราว (ชื่อแทน) ให้กับตารางหรือคอลัมน์ภายในคำสั่ง SQL เพื่อให้การอ่านโค้ดสะดวกและเข้าใจได้ง่ายขึ้น นอกจากนี้ยังช่วยทำให้การเข้าถึงข้อมูลจากหลายตารางที่เกี่ยวข้องกันง่ายขึ้นในกรณีที่มีการใช้คำสั่ง JOIN
ประเภทของ Aliases ใน SQL
- Column Aliases (ชื่อแทนสำหรับคอลัมน์): ใช้เพื่อเปลี่ยนชื่อชั่วคราวของคอลัมน์ในผลลัพธ์ที่แสดงออกมา ทำให้ชื่อคอลัมน์มีความหมายหรือเข้าใจง่ายขึ้นในกรณีที่คอลัมน์นั้นมีชื่อที่ซับซ้อนหรือยาว
- Table Aliases (ชื่อแทนสำหรับตาราง): ใช้เพื่อเปลี่ยนชื่อชั่วคราวของตารางในคำสั่ง SQL โดยเฉพาะในกรณีที่มีการใช้ JOIN หรือตารางหลายตัว การใช้ชื่อแทนช่วยให้เขียนโค้ดสั้นและอ่านง่ายขึ้น
ตัวอย่างการใช้งาน Aliases
สร้างตารางฐานข้อมูลตัวอย่าง
สมมติว่าเรามีฐานข้อมูลซึ่งประกอบด้วยตาราง 2 ตาราง ชื่อว่า Customers และ Orders
CREATE TABLE Customers (
CustomerID INT PRIMARY KEY,
CustomerName VARCHAR(100),
ContactName VARCHAR(100),
Country VARCHAR(50)
);
CREATE TABLE Orders (
OrderID INT PRIMARY KEY,
CustomerID INT,
OrderDate DATE,
Amount DECIMAL(10,2),
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);
INSERT INTO Customers (CustomerID, CustomerName, ContactName, Country)
VALUES
(1, 'ACME Corp.', 'John Doe', 'USA'),
(2, 'XYZ Ltd.', 'Jane Smith', 'UK'),
(3, 'ABC Co.', 'Peter Pan', 'Thailand');
INSERT INTO Orders (OrderID, CustomerID, OrderDate, Amount)
VALUES
(101, 1, '2024-01-15', 150.00),
(102, 2, '2024-02-20', 200.00),
(103, 1, '2024-03-10', 300.00),
(104, 3, '2024-05-05', 500.00);ข้อมูลในตาราง Customers

ข้อมูลในตาราง Orders

ตัวอย่างการใช้งาน Column Aliases
หากเราต้องการให้ผลลัพธ์จากการคิวรีมีชื่อคอลัมน์ที่อ่านง่าย เราสามารถใช้ Column Aliases โดยใช้คำสั่ง AS ตัวอย่างเช่น
SELECT CustomerName AS "Customer", Country AS "Location"
FROM Customers;CustomerNameถูกเปลี่ยนเป็น “Customer”Countryถูกเปลี่ยนเป็น “Location”
ผลลัพธ์

ตัวอย่างการใช้งาน Table Aliases
หากเราต้องการเข้าถึงข้อมูลจากหลายตารางพร้อมกัน เราสามารถใช้ Table Aliases เพื่อย่อชื่อของตารางให้สั้นลง ทำให้คำสั่ง SQL อ่านง่ายขึ้น
ตัวอย่างการ JOIN ตาราง Customers และ Orders เพื่อดึงข้อมูลลูกค้าและคำสั่งซื้อ
SELECT C.CustomerName AS "Customer", O.OrderID AS "Order Number", O.OrderDate AS "Date", O.Amount AS "Total Amount"
FROM Customers C
JOIN Orders O ON C.CustomerID = O.CustomerID;- ตาราง Customers ถูกตั้งชื่อเป็น
C - ตาราง Orders ถูกตั้งชื่อเป็น
O - ใช้
C.CustomerNameเพื่ออ้างถึงคอลัมน์จากตาราง Customers และO.OrderID,O.OrderDate,O.Amountจากตาราง Orders
ผลลัพธ์

การใช้งาน Aliases พร้อมเงื่อนไข (WHERE และ ORDER BY)
นอกจากการใช้งาน Aliases ใน SELECT แล้ว เรายังสามารถใช้ในเงื่อนไข เช่น WHERE หรือการเรียงลำดับ ORDER BY
SELECT C.CustomerName AS "Customer", O.OrderID AS "Order Number", O.Amount AS "Total Amount"
FROM Customers C
JOIN Orders O ON C.CustomerID = O.CustomerID
WHERE O.Amount > 200
ORDER BY O.Amount DESC;- เราใช้
WHERE O.Amount > 200เพื่อกรองข้อมูลที่ยอดสั่งซื้อมากกว่า 200 - ใช้
ORDER BY O.Amount DESCเพื่อเรียงลำดับข้อมูลตามยอดสั่งซื้อลดลง
ผลลัพธ์

สรุป
การใช้ Aliases ใน SQL ช่วยให้เราสามารถ
- ทำให้ชื่อคอลัมน์และตารางอ่านเข้าใจง่ายขึ้น
- เขียนคำสั่ง SQL สั้นและกระชับโดยใช้ชื่อแทนสำหรับตารางที่ยาว
- ใช้งานง่ายและยืดหยุ่นในการเข้าถึงข้อมูลหลายตารางพร้อมกัน
การใช้งาน Column Aliases และ Table Aliases เป็นเทคนิคพื้นฐานแต่มีความสำคัญมากในการทำงานกับ SQL เพราะทำให้การคิวรีข้อมูลสะดวกและเข้าใจง่าย
