Sdílet prostřednictvím


Aliasing (Azure Synapse Analytics, paralelní Data Warehouse)

Platí pro:Azure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod SQL ve službě Microsoft FabricWarehouse v Microsoft Fabric

Aliasing umožňuje dočasné nahrazení krátkého a snadno zapamatovatelného řetězce místo názvu tabulky nebo sloupce v dotazech SQL Azure Synapse Analytics nebo Analytics Platform System (PDW). Aliasy tabulek se často používají v dotazech JOIN, protože syntaxe JOIN při odkazování na sloupce vyžaduje plně kvalifikované názvy objektů.

Aliasy musí být jednotlivá slova, která odpovídají pravidlům pojmenování objektů. Další informace najdete v části Pravidla pojmenování objektů v dokumentaci k produktu PdW (Analytics Platform System). Aliasy nemohou obsahovat prázdné mezery a nelze je uzavřít do jednoduchých nebo dvojitých uvozovek.

Syntaxe

object_source [ AS ] alias

Argumenty

object_source
Název zdrojové tabulky nebo sloupce.

AS
Volitelná předložka aliasu Při práci s aliasy proměnných rozsahu je klíčové slovo AS zakázáno.

Alias Název požadovaného dočasného odkazu pro tabulku nebo sloupec Lze použít libovolný platný název objektu. Další informace najdete v části Pravidla pojmenování objektů v dokumentaci k produktu PdW (Analytics Platform System).

Příklady: Azure Synapse Analytics and Analytics Platform System (PDW)

Následující příklad ukazuje dotaz s více spojeními. V tomto příkladu je znázorněno aliasování tabulek i sloupců.

  • Aliasing sloupců: V tomto příkladu jsou aliasovány sloupce i výrazy zahrnující sloupce v seznamu výběrů. SalesTerritoryRegion AS SalesTR ukazuje jednoduchý alias sloupce. Sum(SalesAmountQuota) AS TotalSales Ukazuje

  • Aliasing tabulky: dbo.DimSalesTerritory AS st Zobrazuje vytvoření aliasu stdbo.DimSalesTerritory pro tabulku.

-- 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;  

Klíčové slovo AS je možné vyloučit, jak je znázorněno níže, ale často je součástí pro čitelnost.

-- 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;  

Další kroky