Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Databases Reporting with SQL Ordering, Limiting and Paging Results Limiting Results

Limiting data with SQL

Hi, here is the question:

There's a books table. There's a title, author, genre and first_published column. Write a query to obtain the first 5 books in the Fantasy genre ordered by the year released. Oldest first. Select all columns.

My answer: SELECT * FROM books ORDER BY genre = "Fantasy" WHERE first_published ASC LIMIT 5;

I am getting this incorrect can someone explain what I am doing wrong please

2 Answers

First "Fantasy" should be in single quotes 'Fantasy' for the syntax error. The Oldest first should be ordered DESC

SELECT * FROM books WHERE genre = 'Fantasy' ORDER BY first_published DESC LIMIT 5;

David Perkins
David Perkins
9,607 Points

Almost... You just need to switch the WHERE with the ORDER BY and that should sort it.

SELECT
  *
FROM
  books
WHERE
  genre IN ("Fantasy")
ORDER BY
  first_published ASC
LIMIT
  5;