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

https://teamtreehouse.com/library/reporting-with-sql/date-and-time-functions/calculating-dates-2

I'm not sure why my code isn't working to calculate the number of orders made yesterday.

https://teamtreehouse.com/library/reporting-with-sql/date-and-time-functions/calculating-dates-2

Challenge Task 1 of 1 In an ecommerce database there's an orders table with the columns id, product_id, user_id, address_id, ordered_on, status and cost.

Count the total number of orders that have the status of shipped and were ordered yesterday. Alias it to shipped_yesterday.

SELECT COUNT(*) AS shipped_yesterday FROM orders WHERE status = "shipped" AND DATE("now", "-1 day")

1 Answer

Jennifer Nordell
seal-mask
STAFF
.a{fill-rule:evenodd;}techdegree
Jennifer Nordell
Treehouse Teacher

Hi there! You're doing great, but you're missing a small part. What you're returning (I believe) are all orders that are marked as "shipped" as of yesterday, but not necessarily all orders that are marked as "shipped" and ordered yesterday. We need the ordered_on to be involved here.

Here's how I did it:

SELECT COUNT(*) AS shipped_yesterday FROM orders WHERE status = "shipped" and ordered_on = DATE("now", "-1 day");

This will return all orders that were ordered yesterday and have already been shipped. Hope this helps! :sparkles: