From 579884ea24d4fd683a936c8dadddc9e9124f9071 Mon Sep 17 00:00:00 2001 From: Florence Laflamme <158511316+florence-laflamme@users.noreply.github.com> Date: Wed, 28 Oct 2026 15:05:08 -0400 Subject: [PATCH] Homework done? --- .../assignments/DC_Cohort/assignment1.sql | 68 ++++++++++++++++--- 1 file changed, 59 insertions(+), 9 deletions(-) diff --git a/02_activities/assignments/DC_Cohort/assignment1.sql b/02_activities/assignments/DC_Cohort/assignment1.sql index a80923591..796fbcab0 100644 --- a/02_activities/assignments/DC_Cohort/assignment1.sql +++ b/02_activities/assignments/DC_Cohort/assignment1.sql @@ -7,6 +7,8 @@ /* 1. Write a query that returns everything in the customer table. */ --QUERY 1 +SELECT * FROM customer + @@ -17,7 +19,9 @@ sorted by customer_last_name, then customer_first_ name. */ --QUERY 2 - +SELECT * FROM customer +ORDER BY customer_last_name, customer_first_name +LIMIT 10 --END QUERY @@ -28,6 +32,9 @@ sorted by customer_last_name, then customer_first_ name. */ Limit to 25 rows of output. */ --QUERY 3 +SELECT * FROM customer_purchases +WHERE product_id = 4 OR 9 +LIMIT 25 @@ -43,7 +50,10 @@ Limit to 25 rows of output. */ --QUERY 4 - +SELECT * FROM customer_purchases +WHERE customer_id = 8 BETWEEN 10 +SELECT quantity * cost_per_quantity AS price +LIMIT 25 --END QUERY @@ -56,7 +66,12 @@ columns and add a column called prod_qty_type_condensed that displays the word if the product_qty_type is “unit,” and otherwise displays the word “bulk.” */ --QUERY 5 - +SELECT product_id, product_name, product_qty_type FROM product +CASE + WHEN product_qty_type = 'unit' + THEN 'unit' + ELSE 'bulk' +END AS 'prod_qty_type_condensed' --END QUERY @@ -67,7 +82,17 @@ add a column to the previous query called pepper_flag that outputs a 1 if the pr contains the word “pepper” (regardless of capitalization), and otherwise outputs 0. */ --QUERY 6 - +SELECT product_id, product_name, product_qty_type FROM product +CASE + WHEN product_qty_type = 'unit' + THEN 'unit' + ELSE 'bulk' +END AS 'prod_qty_type_condensed' +CASE + WHEN product_name LIKE '%pepper%' + THEN 1 + ELSE 0 +END AS 'pepper_flag' --END QUERY @@ -79,6 +104,11 @@ vendor_id field they both have in common, and sorts the result by market_date, t Limit to 24 rows of output. */ --QUERY 7 +SELECT * FROM vendor +INNER JOIN vendor_booth_assignment +ON vendor.vendor_id = vendor_booth_assignment.vendor_id +ORDER BY market_date, vendor_name +LIMIT 24 @@ -93,6 +123,10 @@ Limit to 24 rows of output. */ at the farmer’s market by counting the vendor booth assignments per vendor_id. */ --QUERY 8 +SELECT * FROM vendor +INNER JOIN vendor_booth_assignment +ON vendor.vendor_id = vendor_booth_assignment.vendor_id +COUNT(GROUP BY vendor_id) @@ -107,7 +141,13 @@ HINT: This query requires you to join two tables, use an aggregate function, and --QUERY 9 - +SELECT * FROM customer +INNER JOIN customer_purchases +ON customer.customer_id = customer_purchases.customer_id +GROUP BY customer_id +SUM(quantity*cost_per_quantity) AS total_spent +HAVING total_spent > 2000 +ORDER BY last_name, first_name --END QUERY @@ -124,9 +164,8 @@ When inserting the new vendor, you need to appropriately align the columns to be VALUES(col1,col2,col3,col4,col5) */ --QUERY 10 - - - +SELECT * FROM vendor INTO temp.new_vendor +VALUES(10, 'Thomass Superfood Store', 'Fresh Focused', 'Thomas', 'Rosenthal') --END QUERY @@ -140,7 +179,10 @@ Limit to 25 rows of output. */ --QUERY 11 - +SELECT customer_id, market_date FROM customer_purchases +SELECT STRFTIME('%M', market_date) AS month +SELECT STRFTIME('%Y', market_date) AS year +LIMIT 25 --END QUERY @@ -148,12 +190,20 @@ Limit to 25 rows of output. */ /* 2. Using the previous query as a base, determine how much money each customer spent in April 2022. Remember that money spent is quantity*cost_per_quantity. + HINTS: you will need to AGGREGATE, GROUP BY, and filter... but remember, STRFTIME returns a STRING for your WHERE statement... AND be sure you remove the LIMIT from the previous query before aggregating!! */ --QUERY 12 +SELECT * FROM customer_purchases +SELECT STRFTIME('%M', market_date) AS month +SELECT STRFTIME('%Y', market_date) AS year +GROUP BY customer_id +HAVING month = '04' AND year = '2022' +SUM(quantity*cost_per_quantity) AS price + --END QUERY