From 2ada68aede963413d071463d8e62175e1cfbcc1e Mon Sep 17 00:00:00 2001 From: Adan Date: Thu, 6 Nov 2025 01:58:34 -0500 Subject: [PATCH] Edited the markdown and SQL files as per the assignment1 instructions. Add PDF of Logical Model titled 'assignment1.pdf' --- .../assignments/DC_Cohort/Assignment1.md | 8 +- .../assignments/DC_Cohort/assignment1.pdf | Bin 0 -> 42346 bytes .../assignments/DC_Cohort/assignment1.sql | 113 ++++++++++++++++-- 3 files changed, 107 insertions(+), 14 deletions(-) create mode 100644 02_activities/assignments/DC_Cohort/assignment1.pdf diff --git a/02_activities/assignments/DC_Cohort/Assignment1.md b/02_activities/assignments/DC_Cohort/Assignment1.md index f78778f5b..3e2f969f9 100644 --- a/02_activities/assignments/DC_Cohort/Assignment1.md +++ b/02_activities/assignments/DC_Cohort/Assignment1.md @@ -205,5 +205,11 @@ Consider, for example, concepts of fariness, inequality, social structures, marg ``` -Your thoughts... +As an Epidemiology student, I reguarly learn about or work with public health databases, and it’s obvious that they quietly imbed value systems about whose experiences matter and what differences are worth measuring. + +A big one is gender. Many older (and even some current) surveys only allow “male” or “female,” with no room for trans, nonbinary, or Two-Spirit identities. This reflects a value judgment that only binary gender categories are worth tracking. When data is collected like that, it erases entire groups at the input stage. Later, when a researcher wants to ask, for example, whether access to care differs for trans patients, it’s impossible to answer because the system never allowed those patients to exist in the first place. + +Race and ethnicity are similar. A lot of administrative health data in Canada uses overly broad “race” fields (if race is collected at all). Different communities get collapsed into one label, like grouping Black African and Black Caribbean together, or “South Asian” being treated as interchangeable for people who are Sri Lankan, Tamil, or Punjabi. That flattening encodes a belief that these groups experience the health system the same way, which is not true. On the flip side, many databases have stopped collecting race altogether and just store country of birth instead. That quietly assumes race and racism don’t matter for health, i.e., that a Canadian-born Black person and a Canadian-born white person will have similar exposures, risks, and outcomes because they’re both “Canadian-born.” + +These design choices have real consequences. They make it harder to study inequities, which then makes it easier for institutions to say “there’s no evidence of a disparity.” The absence of data becomes an excuse to ignore structural problems. ``` diff --git a/02_activities/assignments/DC_Cohort/assignment1.pdf b/02_activities/assignments/DC_Cohort/assignment1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d40c06ec4659bbaa0d1dd0b57b7a397104088325 GIT binary patch literal 42346 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 SUt+<<&i@hxYHBGJ>Hh 0 THEN 1 + ELSE 0 + END AS pepper_flag +FROM product; --JOIN /* 1. Write a query that INNER JOINs the vendor table to the vendor_booth_assignments table on the vendor_id field they both have in common, and sorts the result by vendor_name, then market_date. */ - - +SELECT * +FROM vendor +INNER JOIN vendor_booth_assignments +ON vendor.vendor_id = vendor_booth_assignments.vendor_id +ORDER BY vendor_name, market_date; /* SECTION 3 */ -- AGGREGATE /* 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. */ +SELECT + vendor_booth_assignments.vendor_id, + vendor.vendor_name, + COUNT(vendor_booth_assignments.vendor_id) AS NumberOfRentals +FROM vendor_booth_assignments +INNER JOIN vendor +ON vendor_booth_assignments.vendor_id = vendor.vendor_id +GROUP BY vendor_booth_assignments.vendor_id; @@ -64,7 +109,17 @@ 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. */ - +SELECT + customer_purchases.customer_id, + customer.customer_last_name, + customer.customer_first_name, + SUM(customer_purchases.quantity*customer_purchases.cost_to_customer_per_qty) AS TotalSpent +FROM customer_purchases +INNER JOIN customer +ON customer_purchases.customer_id = customer.customer_id +GROUP BY customer_purchases.customer_id +HAVING TotalSpent > 2000 +ORDER BY customer_last_name, customer_first_name; --Temp Table /* 1. Insert the original vendor table into a temp.new_vendor and then add a 10th vendor: @@ -77,16 +132,39 @@ When inserting the new vendor, you need to appropriately align the columns to be -> To insert the new row use VALUES, specifying the value you want for each column: VALUES(col1,col2,col3,col4,col5) */ - - - +CREATE TABLE temp.new_vendor AS +SELECT + vendor_id, + vendor_name, + vendor_type, + vendor_owner_first_name, + vendor_owner_last_name +FROM vendor; + +INSERT INTO temp.new_vendor + (vendor_id, vendor_name, vendor_type, vendor_owner_first_name, vendor_owner_last_name) +VALUES + ( + (SELECT COALESCE(MAX(vendor_id), 0) + 1 FROM temp.new_vendor), + 'Thomass Superfood Store', + 'Fresh Variety: Veggies & More', + 'Thomas', + 'Rosenthal' + ); + -- Date /*1. Get the customer_id, month, and year (in separate columns) of every purchase in the customer_purchases table. + + HINT: you might need to search for strfrtime modifers sqlite on the web to know what the modifers for month and year are! */ - +SELECT + customer_id, + strftime('%m', market_date) AS month, + strftime('%Y', market_date) AS year +FROM customer_purchases; /* 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_to_customer_per_qty. @@ -94,3 +172,12 @@ Remember that money spent is quantity*cost_to_customer_per_qty. HINTS: you will need to AGGREGATE, GROUP BY, and filter... but remember, STRFTIME returns a STRING for your WHERE statement!! */ +SELECT + customer_id, + SUM(quantity * cost_to_customer_per_qty) AS TotalSpent_Apr2022 +FROM customer_purchases +WHERE + strftime('%Y', market_date) = '2022' AND + strftime('%m', market_date) = '04' +GROUP BY customer_id +ORDER BY TotalSpent_Apr2022 DESC;