Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

SQL 教程

SQL 主页 SQL 简介 SQL 语法 SQL 选择 SQL 选择 Distinct SQL Where SQL Order By SQL And SQL Or SQL Not SQL 插入 SQL 空值 SQL 更新 SQL 删除 SQL 选择 Top SQL 聚合函数 SQL Min 和 Max SQL Count SQL Sum SQL Avg SQL Like SQL 通配符 SQL In SQL Between SQL 别名 SQL 联接 SQL 内联接 SQL 左联接 SQL 右联接 SQL 全联接 SQL 自联接 SQL Union SQL Group By SQL Having SQL Exists SQL Any, All SQL Select Into SQL 插入 Select SQL Case SQL 空函数 SQL 存储过程 SQL 注释 SQL 运算符

SQL 数据库

SQL 创建数据库 SQL 删除数据库 SQL 备份数据库 SQL 创建表 SQL 删除表 SQL 修改表 SQL 约束 SQL 非空 SQL 唯一 SQL 主键 SQL 外键 SQL 检查 SQL 默认值 SQL 索引 SQL 自增 SQL 日期 SQL 视图 SQL 注入 SQL 托管 SQL 数据类型

SQL 参考

SQL 关键字 MySQL 函数 SQL Server 函数 MS Access 函数 SQL 快速参考

SQL 示例

SQL 示例 SQL 编辑器 SQL 测验 SQL 练习 SQL Server SQL 集训营 SQL 证书

SQL 别名


SQL 别名

SQL 别名用于为表或表中的列赋予临时名称。

别名通常用于使列名更易读。

别名仅在该查询的持续时间内存在。

别名使用 AS 关键字创建。

示例

SELECT CustomerID AS ID
FROM Customers;
亲自尝试 »

AS 是可选的

实际上,在大多数数据库语言中,您可以跳过 AS 关键字并获得相同的结果

示例

SELECT CustomerID ID
FROM Customers;
亲自尝试 »

语法

当别名用于列时

SELECT column_name AS alias_name
FROM table_name;

当别名用于表时

SELECT column_name(s)
FROM table_name AS alias_name;


演示数据库

以下是示例中使用的 CustomersOrders 表中的选择

Customers

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
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

Orders

OrderID CustomerID EmployeeID OrderDate ShipperID
10248 90 5 7/4/1996 3
10249 81 6 7/5/1996 1
10250 34 4 7/8/1996 2


列别名

以下 SQL 语句创建了两个别名,一个用于 CustomerID 列,另一个用于 CustomerName 列

示例

SELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers;
亲自尝试 »

在别名中使用空格字符

如果希望别名包含一个或多个空格,例如 "My Great Products",请用方括号或双引号将别名括起来。

示例

使用 [方括号] 用于包含空格字符的别名

SELECT ProductName AS [My Great Products]
FROM Products;
亲自尝试 »

示例

使用 "双引号" 用于包含空格字符的别名

SELECT ProductName AS "My Great Products"
FROM Products;
亲自尝试 »

注意: 一些数据库系统允许 [] 和 "",而另一些只允许其中一个。


连接列

以下 SQL 语句创建一个名为“Address”的别名,该别名组合了四个列 (Address、PostalCode、City 和 Country)

示例

SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country AS Address
FROM Customers;
亲自尝试 »

注意: 要使上面的 SQL 语句在 MySQL 中正常工作,请使用以下语句

MySQL 示例

SELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers;
亲自尝试 »

注意: 要使上面的 SQL 语句在 Oracle 中正常工作,请使用以下语句

Oracle 示例

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

表别名

当您希望使用表的别名时,相同的规则适用。

示例

将 Customers 表称为 Persons

SELECT * FROM Customers AS Persons;
亲自尝试 »

在表上使用别名似乎没有用,但是当您在查询中使用多个表时,它可以使 SQL 语句更短。

以下 SQL 语句从 CustomerID=4 (Around the Horn) 的客户那里选择所有订单。我们使用“Customers”和“Orders”表,并分别为它们赋予“c”和“o”的表别名(这里我们使用别名使 SQL 更短)

示例

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;
亲自尝试 »

以下 SQL 语句与上面相同,但没有使用别名

示例

SELECT Orders.OrderID, Orders.OrderDate, Customers.CustomerName
FROM Customers, Orders
WHERE Customers.CustomerName='Around the Horn' AND Customers.CustomerID=Orders.CustomerID;
亲自尝试 »

别名在以下情况下很有用

  • 查询涉及多个表
  • 查询中使用了函数
  • 列名很大或不够易读
  • 将两个或多个列组合在一起

通过练习测试自己

练习

在显示 Customers 表时,为 PostalCode 列创建一个别名,该列应称为 Pno

SELECT CustomerName,
Address,
PostalCode 
FROM Customers;

开始练习


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.