SQL基础知识V2——AS别名

SQL专栏sql

SQL数据库基础知识汇总数据库

SQL数据库高级知识汇总ide

经过使用 SQL,能够为表名称或列名称指定别名(Alias)。函数

别名的做用code

  • SQL 别名用于为表或表中的列提供临时名称。 blog

  • SQL 别名一般用于使列名更具可读性。 it

  • SQL 一个别名只存在于查询期间。

使用别名的场景table

在下列状况下使用别名是有用的:
查询涉及多个表 class

  • 用于查询函数基础

  • 须要把两个或更多的列放在一块儿

  • 列名长或可读性差

列的别名语法
SELECT column_name AS alias_name

FROM table_name;

表的别名语法
SELECT column_name(s)

FROM table_name AS alias_name;

示例数据库
如下是"Customers" 表中的数据:

SQL基础知识V2——AS别名

下面是选自 "Orders" 表的数据:

SQL基础知识V2——AS别名

列的别名实例
如下SQL语句建立两个别名,一个用于客户ID列,另外一个用于姓名列:

实例

SELECT 客户ID AS CustomerID,
姓名  AS Customer
FROM  Customers;

结果以下:

SQL基础知识V2——AS别名

:查询出来的列名会以别名的形式显示,再也不显示原来的列名,可是物理表的列名仍是没变,这样在不影响表结构的前提下,能够根据实际须要重命成本身想要的名称。

如下SQL语句建立两个别名,一个用于姓名列,一个用于城市列。

:若是别名包含空格,则须要双引号或方括号:

实例

SELECT 姓名 AS Customer,
城市 AS [City Name]
FROM Customers;

结果以下:

SQL基础知识V2——AS别名

如下SQL语句建立一个名为“地址”的别名,它包含四列(姓名,省份,城市,地址和邮编):

SELECT 姓名,
省份 +
城市 +
地址 + ',邮编:' +
邮编  AS 地址
FROM Customers;

结果以下:

注:若是咱们不使用AS,上面的地址列就会显示 (无列名)

注意:要使上面的SQL语句在MySQL中工做,请使用如下命令:

SELECT 姓名,
CONCAT(地址,
省份,
城市,
',邮编:',
邮编
) AS 地址
FROM Customers;

注:Mysql中的字符拼接须要使用CONCAT函数,不能直接使用+

SQL基础知识V2——AS别名

表别名实例

如下SQL语句建立两个列别名,一个用于姓名列,一个用于订单日期列,同时建立两个表列名,分别用于Customers表和Orders表

SELECT
c.姓名 AS Customer,
o.订单日期 AS Orderdate
FROM Customers AS c
JOIN Orders AS o
ON c.客户ID=o.客户ID

结果以下:

SQL基础知识V2——AS别名

:上面咱们分别对表名和列名进行了重命名,须要注意的是ON和WHERE以及其余涉及条件筛选的地方,不能使用重命名后的名称,GROUP BY 也不行。此外在进行重命名时AS是能够省略的。

批注

AS别名在多表进行关联时能够很好的处理表名相同的状况,好比两个表都存在姓名列,能够将A表的姓名命名成A_NAME,B表的姓名命名成B_NAME,这样在阅读代码时候能够一目了然。此外AS通常只对查询的列和表以及ORDER BY重命名后的别名才有效,其余地方仍是须要使用原始列名。

相关文章
相关标签/搜索