Hướng dẫn SQL

TRANG CHỦ SQL Giới thiệu SQL Cú pháp SQL Lựa chọn SQL SQL Chọn phân biệt SQL ở đâu SQL Và, Hoặc, Không Đặt hàng SQL theo Chèn SQL vào Giá trị rỗng trong SQL Cập nhật SQL SQL Delete SQL Select Top SQL Min và Max Số lượng SQL, Trung bình, Tổng SQL như Ký tự đại diện SQL SQL trong SQL giữa Bí danh SQL SQL tham gia Tham gia bên trong SQL SQL còn lại tham gia SQL Right Join Tham gia đầy đủ SQL SQL tự tham gia SQL Union Nhóm SQL bởi SQL có SQL tồn tại SQL Bất kỳ, Tất cả SQL chọn vào Chèn SQL vào vùng chọn Trường hợp SQL Hàm Null trong SQL Thủ tục lưu trữ SQL Nhận xét SQL Toán tử SQL

Cơ sở dữ liệu SQL

SQL Tạo cơ sở dữ liệu SQL Drop DB Cơ sở dữ liệu sao lưu SQL SQL Tạo bảng Bảng thả SQL Bảng thay thế SQL Các ràng buộc SQL SQL không rỗng SQL duy nhất Khóa chính SQL Khóa ngoại SQL Kiểm tra SQL SQL mặc định Chỉ mục SQL Tăng tự động SQL SQL Dates Chế độ xem SQL SQL Injection Lưu trữ SQL Các kiểu dữ liệu SQL

Tham chiếu SQL

Từ khóa SQL Các chức năng của MySQL Các chức năng của SQL Server Chức năng MS Access Tham khảo nhanh SQL

Ví dụ về SQL

Ví dụ về SQL Câu hỏi SQL Bài tập SQL Chứng chỉ SQL

Bí danh SQL


Bí danh SQL

Bí danh SQL được sử dụng để đặt tên tạm thời cho một bảng hoặc một cột trong bảng.

Bí danh thường được sử dụng để làm cho tên cột dễ đọc hơn.

Bí danh chỉ tồn tại trong khoảng thời gian của truy vấn đó.

Một bí danh được tạo bằng AStừ khóa.

Cú pháp cột bí danh

SELECT column_name AS alias_name
FROM table_name;

Cú pháp bảng bí danh

SELECT column_name(s)
FROM table_name AS alias_name;

Cơ sở dữ liệu Demo

Trong hướng dẫn này, chúng tôi sẽ sử dụng cơ sở dữ liệu mẫu Northwind nổi tiếng.

Dưới đây là lựa chọn từ bảng "Khách hàng":

CustomerID CustomerName ContactName Address City PostalCode Country
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK

Và lựa chọn từ bảng "Đơn hàng":

OrderID CustomerID EmployeeID OrderDate ShipperID
10354 58 8 1996-11-14 3
10355 4 6 1996-11-15 1
10356 86 6 1996-11-18 2


Bí danh cho các ví dụ về cột

Câu lệnh SQL sau tạo hai bí danh, một cho cột CustomerID và một cho cột CustomerName:

Thí dụ

SELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers;

Câu lệnh SQL sau tạo hai bí danh, một cho cột Tên khách hàng và một cho cột Tên liên hệ. Lưu ý: Nó yêu cầu dấu ngoặc kép hoặc dấu ngoặc vuông nếu tên bí danh chứa khoảng trắng:

Thí dụ

SELECT CustomerName AS Customer, ContactName AS [Contact Person]
FROM Customers;

Câu lệnh SQL sau tạo một bí danh có tên "Địa chỉ" kết hợp bốn cột (Địa chỉ, Mã bưu điện, Thành phố và Quốc gia):

Thí dụ

SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address
FROM Customers;

Lưu ý: Để câu lệnh SQL ở trên hoạt động trong MySQL, hãy sử dụng như sau:

SELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers;

Ví dụ về Bí danh cho Bảng

Câu lệnh SQL sau đây chọn tất cả các đơn đặt hàng từ khách hàng với CustomerID = 4 (Xung quanh Horn). Chúng tôi sử dụng bảng "Khách hàng" và "Đơn đặt hàng" và cung cấp cho chúng bí danh bảng tương ứng là "c" và "o" (Ở đây chúng tôi sử dụng bí danh để làm cho SQL ngắn hơn):

Thí dụ

SELECT o.OrderID, o.OrderDate, c.CustomerName
FROM Customers AS c, Orders AS o
WHERE c.CustomerName='Around the Horn' AND c.CustomerID=o.CustomerID;

Câu lệnh SQL sau giống như trên, nhưng không có bí danh:

Thí dụ

SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName='Around the Horn' AND Customers.CustomerID=Orders.CustomerID;

Bí danh có thể hữu ích khi:

  • Có nhiều hơn một bảng liên quan đến một truy vấn
  • Các hàm được sử dụng trong truy vấn
  • Tên cột lớn hoặc không dễ đọc
  • Hai hoặc nhiều cột được kết hợp với nhau

Kiểm tra bản thân với các bài tập

Bài tập:

Khi hiển thị Customersbảng, hãy tạo ALIAS của PostalCodecột, cột sẽ được gọi Pnothay thế.

SELECT CustomerName,
Address,
PostalCode 
FROM Customers;