Flash cards
Review the key moves
What is the main idea behind SQL Aliases?
Lesson checks
Practice each idea before moving on
Short Mimo-style checks built from this lesson's code, terms, and sequence.
Which statement best captures the main point of this lesson?
Complete the missing token from the example code.
___ CustomerID AS ID, CustomerName AS CustomerPut the learning moves in the order that makes the concept easiest to apply.
An alias is created with the AS keyword, and is often used to make a column name more readable.
An alias only exists for the duration of that query.
Alias for Columns
The following SQL creates two aliases, one for the CustomerID column and one for the CustomerName column:
Example
SELECT CustomerID AS ID, CustomerName AS Customer
FROM Customers;Alias for column
SELECT column_name AS alias_name FROM table_name;
Alias for table
SELECT column_name(s) FROM table_name AS alias_name;
Demo Database
Below is a selection from the Customers table used in the examples:
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
| 3 | Antonio Moreno TaquerÃa | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
| 4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
| 5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
If you want your alias to contain one or more spaces, like "My Great Products", surround the aliasname with square brackets or double quotes:
Example
SELECT ProductName AS [My Great Products]
FROM Products;Example
SELECT ProductName AS "My Great Products"
FROM Products;Note
Some database systems allows both [] and "", and some only allows one of them.
Concatenate Columns
The following SQL creates an alias named "Address" that combine four columns (Address, PostalCode, City and Country):
Example
SELECT CustomerName, Address + ', ' + PostalCode + ' ' + City + ', ' + Country
AS Address
FROM Customers;Note
To get the SQL statement above to work in MySQL use the following:
MySQL Example
SELECT CustomerName, CONCAT(Address,', ',PostalCode,', ',City,', ',Country) AS Address
FROM Customers;Note
To get the SQL statement above to work in Oracle use the following:
Oracle Example
SELECT CustomerName, (Address || ', ' || PostalCode || ' ' || City || ', ' ||
Country) AS Address
FROM Customers;Alias for Tables
The same rules applies when you want to use an alias for a table.
Example
SELECT * FROM Customers AS Persons;It might seem useless to use aliases on tables, but when you are joining tables, it makes sense.
In the following example, c is the alias for customers and o is for orders, making the query shorter and easier to read:
Example
SELECT c.CustomerName, o.OrderID
FROM customers AS c
JOIN orders AS o ON c.customerID = o.customerID;You will learn more about SQL Joins in the next chapters.
Aliases are useful when
- There are more than one table involved in a query
- Functions are used in the query
- Column names are long or not very readable
- Two or more columns are combined together