Skip to main content
AssessIQ
Menu

Skill Test · SQL · Coming soon

SQL Online Test for Hiring & Assessment Coming soon

Coming soon: the SQL test pack is not yet available. What follows describes the intended scope. An SQL online test measures a candidate's ability to query, transform, and reason about relational data — from correct join semantics and GROUP BY logic to subqueries, CTEs, and window functions. It identifies candidates who write correct SQL under realistic conditions, not just those who recall syntax from memory.

Topic breakdown

What the SQL test covers

JOINs and set operations

INNER, LEFT, RIGHT, FULL OUTER, and CROSS JOINs; UNION vs UNION ALL; INTERSECT and EXCEPT — when each produces duplicates and when it doesn't.

Aggregations and grouping

GROUP BY, HAVING vs WHERE (filter order matters), COUNT/SUM/AVG/MIN/MAX, and grouping on multiple columns with correct NULL handling.

Subqueries and CTEs

Correlated vs non-correlated subqueries, scalar subqueries in SELECT, EXISTS and NOT EXISTS, and WITH (CTE) for readable multi-step queries.

Window functions

ROW_NUMBER, RANK, DENSE_RANK for ranking; LAG and LEAD for row-over-row comparison; PARTITION BY and ORDER BY within OVER(); running totals with SUM() OVER().

Data manipulation

INSERT, UPDATE with JOIN, DELETE with subquery, and UPSERT patterns (INSERT ... ON DUPLICATE KEY / ON CONFLICT). Understanding transaction scope.

Query design and optimisation

Index usage basics, avoiding SELECT *, SARGable vs non-SARGable predicates, the cost of functions in WHERE clauses, and reading a basic execution plan.

Illustrative example (not from a live test)

The kind of question candidates answer

Window functions — mid level

Given an orders table with columns order_id, customer_id, and order_total, write a query that returns each order along with that customer's running total of orders placed so far (ordered by order_id).

-- Correct answer:
SELECT
  order_id,
  customer_id,
  order_total,
  SUM(order_total) OVER (
    PARTITION BY customer_id
    ORDER BY order_id
    ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
  ) AS running_total
FROM orders;

Common wrong approaches

  • Using a correlated subquery (works, but 10x slower on large tables)
  • Forgetting PARTITION BY customer_id (gives a global running total, not per-customer)
  • Using GROUP BY instead of a window function (loses individual row granularity)

What this question tests

Understanding when a window function is both semantically correct and more efficient than a correlated subquery or self-join. The PARTITION BY mistake (missing customer_id) is the most common production error — it produces results that look plausible but are wrong.

Who should take it

Roles this test screens for

Data Analyst

SQL is the primary tool. A core joins-aggregations-subqueries pack screens for the daily query work without requiring window function expertise at junior level.

Data / Backend Engineer

Pairing the SQL test with a Python test covers both query and scripting skill — the typical data engineering stack.

Full-Stack Developer

Screens whether a full-stack candidate can write maintainable queries rather than relying entirely on ORM abstractions — a practical signal for teams with complex reporting needs.

Relevant for IT & technical hiring and campus recruitment in India.

Format & difficulty

Duration, format, and difficulty levels

Duration

Coming soon

Confirmed at launch

Format

Coming soon

Confirmed at launch

Levels

Coming soon

Confirmed at launch

FAQ

Common questions about the SQL online test

Is the SQL test available on AssessIQ?

Not yet. The SQL test pack is coming soon. Contact us and we will tell you when it launches.

Which AssessIQ test is available today?

The Aptitude test pack (multiple-choice, scored automatically) is live. Written, scenario and log-analysis questions can be graded with AI assistance by AssessIQ evaluators.

Get started

Ready to screen SQL candidates?