SQL for Java Devs · interview question
Given tables 'customers' and 'orders', which SQL query correctly retrieves customers with their latest order?
Multiple choiceHardchapter-8-curatedpremiumsql-for-java-devsjoins
Answer and explanation
Correct answer
C. SELECT c.*, o.* FROM customers c JOIN orders o ON c.id = o.customer_id WHERE o.date = (SELECT MAX(date) FROM orders WHERE customer_id = c.id)
Why
The query uses a subquery to find the maximum date for each customer's orders, ensuring that only the latest order per customer is retrieved.
Test yourself on SQL for Java Devs
A free test with instant, explained results. No account needed.
More SQL for Java Devs questions
- How can JDBC transactions help maintain data integrity during an e-commerce checkout process?
- What would be the effect of not closing a PreparedStatement in a Java application?
- In JDBC, how do you ensure that SQL injection is prevented when executing a query that searches for a user by email?
- Why do teams use SQL JOINs to fetch relational data in a single query in production code?
- What should a repository method mainly encapsulate?
- How can you prevent the N+1 query problem when retrieving a list of orders with their customer details?