From 35b351a02d3fc7b616d1169b5a102433b1f61e80 Mon Sep 17 00:00:00 2001 From: Antonio Rossi Date: Wed, 28 Oct 2026 10:17:21 -0400 Subject: [PATCH] Complete SQL Assignment 1 --- .../DC_Cohort/Assignment1_ERD.drawio | 55 ++++++++++ .../assignments/DC_Cohort/Assignment1_ERD.png | Bin 0 -> 30963 bytes .../assignments/DC_Cohort/assignment1.sql | 95 ++++++++++++++++-- 3 files changed, 139 insertions(+), 11 deletions(-) create mode 100644 02_activities/assignments/DC_Cohort/Assignment1_ERD.drawio create mode 100644 02_activities/assignments/DC_Cohort/Assignment1_ERD.png diff --git a/02_activities/assignments/DC_Cohort/Assignment1_ERD.drawio b/02_activities/assignments/DC_Cohort/Assignment1_ERD.drawio new file mode 100644 index 000000000..67552e2f0 --- /dev/null +++ b/02_activities/assignments/DC_Cohort/Assignment1_ERD.drawio @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/02_activities/assignments/DC_Cohort/Assignment1_ERD.png b/02_activities/assignments/DC_Cohort/Assignment1_ERD.png new file mode 100644 index 0000000000000000000000000000000000000000..bd1679a932a29cc4d47fa112b6a79f01e565651e GIT binary patch literal 30963 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 literal 0 HcmV?d00001 diff --git a/02_activities/assignments/DC_Cohort/assignment1.sql b/02_activities/assignments/DC_Cohort/assignment1.sql index a80923591..6e972f5d2 100644 --- a/02_activities/assignments/DC_Cohort/assignment1.sql +++ b/02_activities/assignments/DC_Cohort/assignment1.sql @@ -7,7 +7,8 @@ /* 1. Write a query that returns everything in the customer table. */ --QUERY 1 - +SELECT * +FROM customer; --END QUERY @@ -17,7 +18,10 @@ 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,7 +32,10 @@ sorted by customer_last_name, then customer_first_ name. */ Limit to 25 rows of output. */ --QUERY 3 - +SELECT * +FROM customer_purchases +WHERE product_id IN (4, 9) +LIMIT 25; --END QUERY @@ -43,7 +50,11 @@ Limit to 25 rows of output. */ --QUERY 4 - +SELECT *, + quantity * cost_per_quantity AS price +FROM customer_purchases +WHERE customer_id BETWEEN 8 AND 10 +LIMIT 25; --END QUERY @@ -56,7 +67,13 @@ 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, + CASE + WHEN product_qty_type = 'unit' THEN 'unit' + ELSE 'bulk' + END AS prod_qty_type_condensed +FROM product; --END QUERY @@ -66,7 +83,17 @@ if the product_qty_type is “unit,” and otherwise displays the word “bulk. add a column to the previous query called pepper_flag that outputs a 1 if the product_name contains the word “pepper” (regardless of capitalization), and otherwise outputs 0. */ --QUERY 6 - +SELECT product_id, + product_name, + CASE + WHEN product_qty_type = 'unit' THEN 'unit' + ELSE 'bulk' + END AS prod_qty_type_condensed, + CASE + WHEN LOWER(product_name) LIKE '%pepper%' THEN 1 + ELSE 0 + END AS pepper_flag +FROM product; @@ -79,6 +106,12 @@ 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_assignments + ON vendor.vendor_id = vendor_booth_assignments.vendor_id +ORDER BY market_date, vendor_name +LIMIT 24; @@ -92,7 +125,10 @@ Limit to 24 rows of output. */ /* 1. Write a query that determines how many times each vendor has rented a booth at the farmer’s market by counting the vendor booth assignments per vendor_id. */ --QUERY 8 - +SELECT vendor_id, + COUNT(*) AS booth_rentals +FROM vendor_booth_assignments +GROUP BY vendor_id; @@ -106,7 +142,18 @@ of customers for them to give stickers to, sorted by last name, then first name. HINT: This query requires you to join two tables, use an aggregate function, and use the HAVING keyword. */ --QUERY 9 - +SELECT customer.customer_id, + customer_first_name, + customer_last_name, + SUM(quantity * cost_per_quantity) AS total_spent +FROM customer +INNER JOIN customer_purchases + ON customer.customer_id = customer_purchases.customer_id +GROUP BY customer.customer_id, + customer_first_name, + customer_last_name +HAVING SUM(quantity * cost_per_quantity) > 2000 +ORDER BY customer_last_name, customer_first_name; --END QUERY @@ -124,7 +171,24 @@ When inserting the new vendor, you need to appropriately align the columns to be VALUES(col1,col2,col3,col4,col5) */ --QUERY 10 - +CREATE TEMP TABLE new_vendor AS +SELECT * +FROM vendor; + +INSERT INTO new_vendor ( + vendor_id, + vendor_name, + vendor_type, + vendor_owner_first_name, + vendor_owner_last_name +) +VALUES ( + 10, + 'Thomass Superfood Store', + 'Fresh Focused', + 'Thomas', + 'Rosenthal' +); @@ -138,7 +202,11 @@ HINT: you might need to search for strfrtime modifers sqlite on the web to know and year are! Limit to 25 rows of output. */ --QUERY 11 - +SELECT customer_id, + strftime('%m', market_date) AS month, + strftime('%Y', market_date) AS year +FROM customer_purchases +LIMIT 25; @@ -152,7 +220,12 @@ 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 customer_id, + SUM(quantity * cost_per_quantity) AS total_spent +FROM customer_purchases +WHERE strftime('%m', market_date) = '04' + AND strftime('%Y', market_date) = '2022' +GROUP BY customer_id;