Databases Reporting with SQL Date and Time Functions Calculating Dates

Question needs to be re-worded.

The question in this challenge need to be re-worded.

" 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 yesterday. Alias it to shipped_yesterday. "

There is only an ordered_on date, there is no date showing when it was shipped.

It should say "Count the total number of orders that have the status of shipped and was ordered yesterday. Alias it to shipped_yesterday.

2 Answers

You are right. The question assumes same-day shipping always happens!

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

Dave McFarland
STAFF
Dave McFarland
Treehouse Teacher

You're right! I've reworded the question to say

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

It's not 100% accurate, since they could have ordered yesterday, but shipped today, but this captures the flavor of the challenge, and gives you enough information to put the query together correctly. Thanks for reporting this.