SQL的别名
在计算字段中若没有指定列名,它仅仅只是一个值,而一个未命名的列不能用于客户端应用,因为客户端没有办法引用它。为此,可以给计算字段启用一个别名,这样就可以给客户端应用使用。别名可以通过AS关键字赋予,由于Oracle不支持AS关键字,所有也可以直接在计算字段后面赋予别名。在很多DBMS中,AS关键字是可选的,不过最好使用它。
别名的名字既可以是一个单词,也可以是一个字符串。如果是后者,字符串应该括在引号中。虽然这种做法是合法的,但不建议这么去做。虽然多单词的名字可读性高,不过会给客户端应用带来各种问题。因此,别名最常用的使用是将多个单词的列名重命名为一个单词的名字。别名有时候也称为导出列(derived column)。
除了列名可以赋予别名外,表名也是可以赋予别名的,不过它们是有些区别的:表别名只是在查询执行中使用,不返回到客户端;而列别名返回到客户端。
别名的用途:
- 可以导出列
- 在实际的表列名包含不合法的字符(如空格)时重新命名它
- 在原来的名字含混或容易误解时扩充它
- 在引用相同表名时出现歧义性,可以使用表别名区分
阅读是一种修养,分享是一种美德。