SQL Aliases (AS)
Aliases are temporary names given to columns or tables to make queries more readable.
💡 Aliases don't change actual column or table names — they just rename them for the current query.
Column Aliases
SELECT column_name AS alias_name FROM table_name;
Examples
SELECT
first_name AS "First Name",
last_name AS "Last Name",
salary * 0.1 AS "Bonus Amount"
FROM employees;
The AS Keyword is Optional
SELECT first_name "First Name", last_name "Last Name"
FROM employees;
Table Aliases
SELECT c.first_name, c.last_name, o.total
FROM customers AS c
INNER JOIN orders AS o ON c.id = o.customer_id;
-- AS is optional for tables too:
SELECT c.first_name, o.total
FROM customers c
INNER JOIN orders o ON c.id = o.customer_id;
Aliases with Expressions
SELECT
name,
price,
stock,
price * stock AS inventory_value,
CASE
WHEN stock = 0 THEN 'Out of Stock'
WHEN stock < 10 THEN 'Low Stock'
ELSE 'In Stock'
END AS stock_status
FROM products;
⚠️ You CANNOT use column aliases in the WHERE clause because WHERE is evaluated before SELECT.
✏️ Exercise: Write a query that uses table aliases to join 'customers' (alias c) with 'orders' (alias o)
See Solution
SELECT c.first_name, c.last_name, o.total, o.order_date
FROM customers c
INNER JOIN orders o ON c.id = o.customer_id;
✅ Key Takeaways
- Column aliases rename columns in the result set
- Table aliases make queries shorter and cleaner
- Use AS for clarity (though it's optional)
- Aliases work in ORDER BY but not in WHERE
- Aliases are essential with joins and expressions