Aliases (AS)
Aliases give temporary names to columns or tables in a query. Column aliases make output readable. Table aliases (especially in JOINs) shorten long table names. AS is optional — a space works too — but always use AS for clarity.
Alias Rules
- Column alias: SELECT price * 0.9 AS discounted_price
- Table alias: FROM products p (or FROM products AS p)
- Aliases can be used in ORDER BY but NOT in WHERE or HAVING
- Aliases with spaces need quotes: AS "full name"
- Snake_case aliases (no spaces) don't need quotes
- Table aliases are essential in JOINs (covered in Module 5)
Alias Examples
-- Column aliases
SELECT
name AS product_name,
price AS unit_price,
stock AS available_units,
price * stock AS inventory_value
FROM products;
-- Table alias (shortens FROM clause)
SELECT p.name, p.price
FROM products AS p
WHERE p.price > 100;
-- Short form (AS is optional but use it for clarity)
SELECT p.name, p.price
FROM products p;
-- Alias used in ORDER BY (valid)
SELECT name, price * 0.9 AS sale_price
FROM products
ORDER BY sale_price DESC;
-- Alias in WHERE (INVALID — runs before SELECT)
-- SELECT name, price * 0.9 AS sale_price
-- FROM products
-- WHERE sale_price < 500; -- ERROR!
-- Fix: WHERE price * 0.9 < 500
-- Aliases with spaces (use double quotes)
SELECT
CONCAT(name, ' - ', price) AS "Product Info"
FROM products;Quick Quiz
Tip
Tip
Practice Aliases AS in small, isolated examples before integrating into larger projects. Breaking concepts into small experiments builds genuine understanding faster than reading alone.
Inner query runs first, results used by outer query. CTEs are often more readable.
Common Mistake
Warning
A common mistake with Aliases AS is skipping edge case testing — empty inputs, null values, and unexpected data types. Always validate boundary conditions to write robust, production-ready sql code.
Practice Task
Note
Practice Task — (1) Write a working example of Aliases AS from scratch without looking at notes. (2) Modify it to handle an edge case (empty input, null value, or error state). (3) Share your solution in the Priygop community for feedback.
Key Takeaways
- Aliases give temporary names to columns or tables in a query.
- Column alias: SELECT price * 0.9 AS discounted_price
- Table alias: FROM products p (or FROM products AS p)
- Aliases can be used in ORDER BY but NOT in WHERE or HAVING