Aliasing (Azure Synapse Analytics)

適用於:Microsoft Fabric 中Microsoft網狀架構倉儲中的 Azure Synapse AnalyticsSQL 分析端點

別名允許在 Azure Synapse Analytics SQL 查詢中暫時替換一個短且易記的字串,取代資料表或欄位名稱。 數據表別名通常用於查詢中 JOIN ,因為 JOIN 語法在參考數據行時需要完整物件名稱。

別名必須是符合物件命名規則的單字。 如需詳細資訊,請參閱 資料庫標識符。 物件不可包含空格,且不可以單引號或雙引號括住。

語法

object_source [ AS ] alias

引數

object_source

來源資料表或資料行的名稱。

AS

選擇性的別名前置詞。 使用範圍變數別名功能時,禁止使用 AS 關鍵字。

alias

數據表或數據行所需的暫存參考名稱。 可以使用任何有效的物件名稱。

範例:Azure Synapse Analytics

下列範例示範含有多個聯結的查詢。 此範例同時示範資料表和資料行別名功能。 這些範例使用 AdventureWorks 範例資料庫。

  • 資料行別名功能:在此範例中,資料行及涉及選取清單中資料行的運算式都採用別名。 SalesTerritoryRegion AS SalesTR 示範一個簡單的資料行別名。 Sum(SalesAmountQuota) AS TotalSales 示範

  • 資料表別名功能:dbo.DimSalesTerritory AS st 示範如何為 st 資料表建立 dbo.DimSalesTerritory 別名。

-- Uses AdventureWorks

SELECT LastName, SUM(SalesAmountQuota) AS TotalSales, SalesTerritoryRegion AS SalesTR,  
    RANK() OVER (PARTITION BY SalesTerritoryRegion ORDER BY SUM(SalesAmountQuota) DESC ) AS RankResult  
FROM dbo.DimEmployee AS e  
INNER JOIN dbo.FactSalesQuota AS sq ON e.EmployeeKey = sq.EmployeeKey  
INNER JOIN dbo.DimSalesTerritory AS st ON e.SalesTerritoryKey = st.SalesTerritoryKey  
WHERE SalesPersonFlag = 1 AND SalesTerritoryRegion != N'NA'  
GROUP BY LastName, SalesTerritoryRegion;  

AS關鍵詞可以排除,但通常包含供可讀性使用。

-- Uses AdventureWorks

SELECT LastName, SUM(SalesAmountQuota) TotalSales, SalesTerritoryRegion SalesTR,  
RANK() OVER (PARTITION BY SalesTerritoryRegion ORDER BY SUM(SalesAmountQuota) DESC ) RankResult  
FROM dbo.DimEmployee e  
INNER JOIN dbo.FactSalesQuota sq ON e.EmployeeKey = sq.EmployeeKey  
INNER JOIN dbo.DimSalesTerritory st ON e.SalesTerritoryKey = st.SalesTerritoryKey  
WHERE SalesPersonFlag = 1 AND SalesTerritoryRegion != N'NA'  
GROUP BY LastName, SalesTerritoryRegion;