Bird
Raised Fist0
SQLquery~5 mins

ORDER BY with NULL values behavior in SQL - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the ORDER BY clause do in SQL?
It sorts the rows returned by a query based on one or more columns, either in ascending (ASC) or descending (DESC) order.
Click to reveal answer
beginner
How are NULL values treated by default when using ORDER BY in SQL?
By default, NULL values are treated as the lowest possible values and appear first when sorting in ascending order, and last when sorting in descending order.
Click to reveal answer
intermediate
What keywords can you use to control the position of NULL values in ORDER BY?
You can use NULLS FIRST or NULLS LAST to explicitly specify whether NULL values appear at the beginning or end of the sorted result.
Click to reveal answer
intermediate
Write a simple SQL query to order a table named 'employees' by the 'salary' column with NULL salaries appearing last.
SELECT * FROM employees ORDER BY salary ASC NULLS LAST;
Click to reveal answer
beginner
Why might controlling NULL ordering be important in real-life data sorting?
Because NULLs represent missing or unknown data, controlling their position helps make reports clearer and ensures important data is prioritized in the sorted list.
Click to reveal answer
By default, where do NULL values appear when you ORDER BY a column in ascending order?
ARandomly
BAt the end
CAt the beginning
DIn the middle
Which clause explicitly places NULL values at the end of the sorted results?
ANULLS LAST
BNULLS FIRST
CORDER BY NULL
DIS NULL
What happens to NULL values when you ORDER BY a column in descending order without specifying NULLS FIRST or LAST?
ANULLs appear first
BNULLs appear last
CNULLs are ignored
DQuery fails
Which SQL keyword is NOT used to control NULL ordering?
ANULLS MIDDLE
BNULLS LAST
CNULLS FIRST
DORDER BY
If you want NULL values to appear at the top when sorting descending, which clause should you use?
AORDER BY DESC NULLS LAST
BNULLS LAST
CORDER BY ASC NULLS FIRST
DNULLS FIRST
Explain how NULL values are ordered by default in SQL when using ORDER BY with ascending and descending sorts.
Think about how missing data is treated compared to actual values.
You got /3 concepts.
    Describe how you can control the position of NULL values in an ORDER BY clause and why this might be useful.
    Consider how reports or lists look when missing data is shown first or last.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the ORDER BY clause do when sorting a column that contains NULL values by default in SQL?
      easy
      A. It treats NULL as zero and sorts accordingly.
      B. It places NULL values at the beginning when sorting in ascending order.
      C. It places NULL values at the end when sorting in ascending order.
      D. It causes a syntax error if NULL values exist.

      Solution

      1. Step 1: Understand default ORDER BY behavior

        By default, when sorting ascending, SQL places NULL values last because NULL means unknown or missing data.
      2. Step 2: Confirm NULL placement in ascending order

        Since NULL is considered neither high nor low, it appears after all actual values in ascending order.
      3. Final Answer:

        It places NULL values at the end when sorting in ascending order. -> Option C
      4. Quick Check:

        Default ascending sort puts NULL last [OK]
      Hint: Remember: NULLs come last by default in ascending order [OK]
      Common Mistakes:
      • Thinking NULLs are treated as zero
      • Assuming NULLs appear first by default
      • Believing NULLs cause errors in ORDER BY
      2. Which of the following is the correct syntax to sort a column named score in ascending order but place NULL values first?
      easy
      A. ORDER BY score ASC NULLS FIRST
      B. ORDER BY score ASC NULLS LAST
      C. ORDER BY score NULLS FIRST ASC
      D. ORDER BY NULLS FIRST score ASC

      Solution

      1. Step 1: Recall correct syntax for NULL placement

        The correct syntax places NULLS FIRST or NULLS LAST after the sort direction (ASC or DESC).
      2. Step 2: Match syntax with options

        ORDER BY score ASC NULLS FIRST uses ORDER BY score ASC NULLS FIRST, which is the correct order of keywords.
      3. Final Answer:

        ORDER BY score ASC NULLS FIRST -> Option A
      4. Quick Check:

        NULLS FIRST comes after ASC/DESC [OK]
      Hint: Put NULLS FIRST or LAST after ASC/DESC in ORDER BY [OK]
      Common Mistakes:
      • Placing NULLS FIRST before column name
      • Mixing order of ASC/DESC and NULLS FIRST
      • Using NULLS FIRST without ASC or DESC
      3. Given the table students with column grade containing values (85, NULL, 90, 70), what is the result of this query?
      SELECT grade FROM students ORDER BY grade DESC NULLS LAST;
      medium
      A. [NULL, 90, 85, 70]
      B. [90, 85, 70, NULL]
      C. [90, 85, 70]
      D. [70, 85, 90, NULL]

      Solution

      1. Step 1: Sort grades descending with NULLs last

        Descending order sorts from highest to lowest: 90, 85, 70. NULLs go last as specified.
      2. Step 2: Arrange final output

        So the order is 90, 85, 70, then NULL at the end.
      3. Final Answer:

        [90, 85, 70, NULL] -> Option B
      4. Quick Check:

        DESC with NULLS LAST puts NULL at end [OK]
      Hint: DESC sorts high to low; NULLS LAST puts NULL at end [OK]
      Common Mistakes:
      • Placing NULL at start despite NULLS LAST
      • Ignoring NULLS LAST and using default NULL position
      • Sorting ascending instead of descending
      4. Identify the error in this SQL query:
      SELECT name FROM employees ORDER BY salary NULLS FIRST ASC;
      medium
      A. The order of NULLS FIRST and ASC is incorrect.
      B. NULLS FIRST cannot be used with ASC.
      C. Missing comma between salary and NULLS FIRST.
      D. The query is correct and will run without errors.

      Solution

      1. Step 1: Check correct syntax order for ORDER BY

        The correct syntax is ORDER BY salary ASC NULLS FIRST. NULLS FIRST must come after ASC or DESC.
      2. Step 2: Identify error in given query

        The query places NULLS FIRST before ASC, which is invalid syntax.
      3. Final Answer:

        The order of NULLS FIRST and ASC is incorrect. -> Option A
      4. Quick Check:

        NULLS FIRST must follow ASC/DESC [OK]
      Hint: NULLS FIRST/LAST always after ASC or DESC [OK]
      Common Mistakes:
      • Placing NULLS FIRST before ASC/DESC
      • Adding commas in ORDER BY clause
      • Assuming NULLS FIRST is invalid with ASC
      5. You want to list products by price ascending but ensure that products with unknown price (NULL) appear at the top. Which query achieves this correctly?
      hard
      A. SELECT * FROM products ORDER BY price ASC NULLS LAST;
      B. SELECT * FROM products ORDER BY price NULLS FIRST ASC;
      C. SELECT * FROM products ORDER BY NULLS FIRST price ASC;
      D. SELECT * FROM products ORDER BY price ASC NULLS FIRST;

      Solution

      1. Step 1: Understand requirement for NULL placement

        We want ascending order but NULL values first, so use NULLS FIRST after ASC.
      2. Step 2: Check syntax correctness

        SELECT * FROM products ORDER BY price ASC NULLS FIRST; uses ORDER BY price ASC NULLS FIRST, which is valid and meets the requirement.
      3. Final Answer:

        SELECT * FROM products ORDER BY price ASC NULLS FIRST; -> Option D
      4. Quick Check:

        ASC with NULLS FIRST puts NULLs on top [OK]
      Hint: Use ASC NULLS FIRST to put NULLs at top in ascending sort [OK]
      Common Mistakes:
      • Placing NULLS FIRST before ASC
      • Using NULLS LAST instead of NULLS FIRST
      • Misordering keywords causing syntax errors
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard