Alias ​​(SQL)

Alias ​​to funkcja języka SQL obsługiwana przez większość, jeśli nie wszystkie, systemów zarządzania relacyjnymi bazami danych (RDBMS) . Aliasy zapewniają administratorom baz danych , a także innym użytkownikom baz danych, możliwość zmniejszenia ilości kodu wymaganego do wykonania zapytania i uczynienia zapytań prostszymi do zrozumienia. Ponadto aliasing może być używany jako technika zaciemniania w celu ochrony prawdziwych nazw pól bazy danych.

W SQL można aliasować tabele i kolumny . Alias ​​tabeli jest również nazywany nazwą korelacji . Programista może użyć aliasu, aby tymczasowo przypisać inną nazwę do tabeli lub kolumny na czas trwania zapytania SELECT . Przypisanie aliasu w rzeczywistości nie zmienia nazwy kolumny ani tabeli. Jest to często przydatne, gdy tabele lub ich kolumny mają bardzo długie lub złożone nazwy. Pseudonimem może być dowolna nazwa, ale zazwyczaj jest ona krótka. Na przykład często można używać aliasu tabeli, takiego jak „pi”, dla tabeli o nazwie „price_information”.

Ogólna składnia aliasu to SELECT * FROM nazwa_tabeli [ AS ] nazwa_aliasu . Należy zauważyć, że słowo kluczowe AS jest całkowicie opcjonalne i zwykle jest przechowywane w celu zapewnienia czytelności. Oto kilka przykładowych danych, do których będą odwoływać się poniższe zapytania:

Tabela działów
ID działu Nazwa oddziału
31 Obroty
33 Inżynieria
34 Urzędniczy
35 Marketing

Używanie aliasu tabeli:

       WYBIERZ  D.  _  Nazwa działu  Z  działu  AS  D 

Możemy również napisać to samo zapytanie w ten sposób (zauważ, że tym razem pominięto klauzulę AS):

      WYBIERZ  D.  _  Nazwa działu  Z  Działu  D 

Alias ​​kolumny jest podobny:

           WYBIERZ  d  .  DepartmentId  AS  Id  ,  d  .  DepartmentName  AS  Nazwa  FROM  Department  d 

W zwróconych zestawach wyników zostaną zwrócone dane pokazane powyżej, z wyjątkiem tego, że „DepartmentID” będzie wyświetlane jako „Id”, a „DepartmentName” będzie wyświetlane jako „Nazwa”.

Ponadto, jeśli wybierana jest tylko jedna tabela, a zapytanie nie wykorzystuje łączenia tabel , dopuszczalne jest pominięcie nazwy tabeli lub aliasu tabeli w nazwie kolumny w instrukcji SELECT. Przykład w następujący sposób:

           SELECT  DepartmentId  AS  Id  ,  DepartmentName  AS  Name  FROM  Department  d 

Niektóre systemy, takie jak Postgres i Presto, obsługują określanie aliasów kolumn razem z aliasami tabel. Np

       WYBIERZ  D.  _  Identyfikator  Z  Działu  AS  D  (  Identyfikator  ) 

dałoby taki sam zestaw wyników jak poprzednio. W tej składni dopuszczalne jest pominięcie aliasów dla niektórych nazw kolumn. W przykładzie podano alias dla DepartmentId, ale pominięto dla DepartmentName. Kolumny z nieokreślonymi aliasami pozostaną bez aliasów. Ta składnia jest często używana z wyrażeniami, które nie tworzą użytecznych nazw tabel i kolumn, takich jak WARTOŚCI i UNNEST. Na przykład można wygodnie przetestować powyższe instrukcje SQL bez tworzenia rzeczywistej tabeli Departments, używając wyrażeń takich jak

        
          Z  Działem  (  Id działu  ,  NazwaWydziału  )  AS  (  WARTOŚCI  (  1  ,  „HR”  ),  (  2  ,  „IT”  ))  SELECT  Identyfikator działu  AS  Id  ,  Nazwa działu  AS  Nazwa  Z  Działu  d  ;