在 SQL Server 中,為列定義別名有三種方式:
1. 使用 AS ,定義別名,也是推薦做法
格式:<表達式> AS <別名>
2. T-SQL 中還支持 <別名>=<表達式>(別名=表達式)。基本上我很少見到有采用這種方式為列定義別名的。
3. SQL Server 中還支持下面這樣為列定義別名
格式:<表達式> <別名>(<表達式> 空格 <別名>)
這種方式非常不明確,不建議使用。
注意:有趣的是,如果你不小心忘記在 SELECT 列表的兩個列名之間指定一個逗號,代碼也不會失敗,相反, SQL Server 會認為第二個列名稱是第一個列名的別名。
假如你想返回 Orders 表的兩個列 Orderid 和 Orderdate ,結果不小心,忘記在兩個列名之間加一個逗號寫成
SELECT orderid orderdate FROM Orders
這樣,也不會報錯,SQL Server 會把 orderdate 當成 orderid 的別名。