PostgreSQL - składnia ALIAS
Możesz tymczasowo zmienić nazwę tabeli lub kolumny, nadając inną nazwę, znaną jako ALIAS. Użycie aliasów tabel oznacza zmianę nazwy tabeli w określonej instrukcji PostgreSQL. Zmiana nazwy jest zmianą tymczasową, a rzeczywista nazwa tabeli nie zmienia się w bazie danych.
Aliasy kolumn służą do zmiany nazw kolumn tabeli na potrzeby konkretnego zapytania PostgreSQL.
Składnia
Podstawowa składnia table alias jest następujący -
SELECT column1, column2....
FROM table_name AS alias_name
WHERE [condition];
Podstawowa składnia column alias jest następujący -
SELECT column_name AS alias_name
FROM table_name
WHERE [condition];
Przykład
Rozważ dwie poniższe tabele: (a) Tabela COMPANY przedstawia się następująco -
testdb=# select * from COMPANY;
id | name | age | address | salary
----+-------+-----+-----------+--------
1 | Paul | 32 | California| 20000
2 | Allen | 25 | Texas | 15000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall| 45000
7 | James | 24 | Houston | 10000
(7 rows)
(b) Kolejna tabela to DEPARTMENT, jak następuje -
id | dept | emp_id
----+--------------+--------
1 | IT Billing | 1
2 | Engineering | 2
3 | Finance | 7
4 | Engineering | 3
5 | Finance | 4
6 | Engineering | 5
7 | Finance | 6
(7 rows)
Teraz, poniżej jest użycie TABLE ALIAS gdzie używamy C i D jako aliasów odpowiednio dla tabel COMPANY i DEPARTMENT -
testdb=# SELECT C.ID, C.NAME, C.AGE, D.DEPT
FROM COMPANY AS C, DEPARTMENT AS D
WHERE C.ID = D.EMP_ID;
Powyższa instrukcja PostgreSQL da następujący wynik -
id | name | age | dept
----+-------+-----+------------
1 | Paul | 32 | IT Billing
2 | Allen | 25 | Engineering
7 | James | 24 | Finance
3 | Teddy | 23 | Engineering
4 | Mark | 25 | Finance
5 | David | 27 | Engineering
6 | Kim | 22 | Finance
(7 rows)
Zobaczmy przykład użycia COLUMN ALIAS gdzie COMPANY_ID to alias kolumny ID, a COMPANY_NAME to alias kolumny nazwa -
testdb=# SELECT C.ID AS COMPANY_ID, C.NAME AS COMPANY_NAME, C.AGE, D.DEPT
FROM COMPANY AS C, DEPARTMENT AS D
WHERE C.ID = D.EMP_ID;
Powyższa instrukcja PostgreSQL da następujący wynik -
company_id | company_name | age | dept
------------+--------------+-----+------------
1 | Paul | 32 | IT Billing
2 | Allen | 25 | Engineering
7 | James | 24 | Finance
3 | Teddy | 23 | Engineering
4 | Mark | 25 | Finance
5 | David | 27 | Engineering
6 | Kim | 22 | Finance
(7 rows)