SQLite - 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 SQLite. 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 SQLite.
Składnia
Poniżej znajduje się podstawowa składnia table Alias.
SELECT column1, column2....
FROM table_name AS alias_name
WHERE [condition];
Poniżej znajduje się podstawowa składnia column Alias.
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 -
sqlite> select * from COMPANY;
ID NAME AGE ADDRESS SALARY
---------- -------------------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
(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
Teraz, poniżej jest użycie TABLE ALIAS gdzie używamy C i D jako aliasów odpowiednio dla tabel COMPANY i DEPARTMENT -
sqlite> 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 SQLite da następujący wynik -
ID NAME AGE DEPT
---------- ---------- ---------- ----------
1 Paul 32 IT Billing
2 Allen 25 Engineering
3 Teddy 23 Engineering
4 Mark 25 Finance
5 David 27 Engineering
6 Kim 22 Finance
7 James 24 Finance
Rozważ przykład użycia COLUMN ALIAS gdzie COMPANY_ID to alias kolumny ID, a COMPANY_NAME to alias kolumny nazwa.
sqlite> 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 SQLite da następujący wynik -
COMPANY_ID COMPANY_NAME AGE DEPT
---------- ------------ ---------- ----------
1 Paul 32 IT Billing
2 Allen 25 Engineering
3 Teddy 23 Engineering
4 Mark 25 Finance
5 David 27 Engineering
6 Kim 22 Finance
7 James 24 Finance