SQL Alias(别名)

接下来,我们讨论  alias (别名)        SQL  上的用处。最常用到的别名有两种:栏位别名及表

        格别名

简单地来说,栏位别名的目的是为了让  SQL  产生的结果易读。在之前的例子中,每当我们

有营业额总合时,栏位名都是  SUM(sales)。虽然在这个情况下没有什么问题,可是如果这

个栏位不是一个简单的总合,而是一个复杂的计算,那栏位名就没有这么易懂了。若我们用

栏位别名的话,就可以确认结果中的栏位名是简单易懂的。


第二种别名是表格别名。要给一个表格取一个别名,只要在  FROM         子句中的表格名后空一

格,然后再列出要用的表格别名就可以了。这在我们要用  SQL  由数个不同的表格中获取资

料时是很方便的。这一点我们在之后谈到连接  (join)      时会看到。


我们先来看一下栏位别名和表格别名的语法:


SELECT "表格别名"."栏位1" "栏位别名"  

FROM "表格名" "表格别名"  


基本上,这两种别名都是放在它们要替代的物件后面,而它们中间由一个空白分开。我们继

续使用  Store_Information  这个表格来做例子:

Store_Information  表格

SQL语句学习之路12_资料

SELECT A1.store name Store, SUM(A1,Sales) "Total Sales"

FROM Store Information A1

        GROUP BY A1,store_name

   结果:

Store                      Total Sales  

Los Angeles              $1800  

San Diego                 $250  

Boston                      $700  

在结果中,资料本身没有不同。不同的是栏位的标题。这是运用栏位别名的结果。在第二个

栏位上,原本我们的标题是  "Sum(Sales)",而现在我们有一个很清楚的  "Total Sales"。很明

显地,  "Total Sales"      能够比  "Sum(Sales)"      更精确地阐述这个栏位的含意。



通过使用 SQL,可以为列名称和表名称指定别名(Alias)。

SQL Alias

表的 SQL Alias 语法

SELECT column_name(s)
FROM table_name
AS alias_name

列的 SQL Alias 语法

SELECT column_name AS alias_name
FROM table_name

Alias 实例: 使用表名称别名

假设我们有两个表分别是:"Persons" 和 "Product_Orders"。我们分别为它们指定别名 "p" 和 "po"。

现在,我们希望列出 "John Adams" 的所有定单。

我们可以使用下面的 SELECT 语句:

SELECT po.OrderID, p.LastName, p.FirstName
FROM Persons AS p, Product_Orders AS po
WHERE p.LastName='Adams' AND p.FirstName='John'

不使用别名的 SELECT 语句:

SELECT Product_Orders.OrderID, Persons.LastName, Persons.FirstName
FROM Persons, Product_Orders
WHERE Persons.LastName='Adams' AND Persons.FirstName='John'

从上面两条 SELECT 语句您可以看到,别名使查询程序更易阅读和书写。

Alias 实例: 使用一个列名别名

表 Persons:

IdLastNameFirstNameAddressCity
1AdamsJohnOxford StreetLondon
2BushGeorgeFifth AvenueNew York
3CarterThomasChangan StreetBeijing

SQL:

SELECT LastName AS Family, FirstName AS Name    //SELECT LastName AS Family, FirstName AS Name

FROM Persons //FROM Persons

结果:

FamilyName
AdamsJohn
BushGeorge
CarterThomas