From 6fe83dd12b462cb55949da97b9e09860c10b8c82 Mon Sep 17 00:00:00 2001 From: Syeda Hania Qamar Date: Tue, 7 Apr 2026 12:34:30 -0400 Subject: [PATCH] Complete Assignment 2 (SQL + writeup + ERDs) --- .../assignments/DC_Cohort/Assignment2.md | 26 ++- 02_activities/assignments/DC_Cohort/ERD1.png | Bin 0 -> 60035 bytes 02_activities/assignments/DC_Cohort/ERD2.png | Bin 0 -> 103278 bytes .../assignments/DC_Cohort/assignment2.sql | 164 +++++++++++++++++- 4 files changed, 175 insertions(+), 15 deletions(-) create mode 100644 02_activities/assignments/DC_Cohort/ERD1.png create mode 100644 02_activities/assignments/DC_Cohort/ERD2.png diff --git a/02_activities/assignments/DC_Cohort/Assignment2.md b/02_activities/assignments/DC_Cohort/Assignment2.md index 01f991d02..b4e92f0c9 100644 --- a/02_activities/assignments/DC_Cohort/Assignment2.md +++ b/02_activities/assignments/DC_Cohort/Assignment2.md @@ -55,9 +55,21 @@ The store wants to keep customer addresses. Propose two architectures for the CU **HINT:** search type 1 vs type 2 slowly changing dimensions. -``` -Your answer... -``` +Architecture Number 1: Overwrite (Slowly changing dimension type 1) +Customer_ID will be unique and Customer_Addresss will have one row per customer. +When a customer changes locations, we update the existing row with the new address. +The history of the old address will be lost. + +Columns could include: +Customer_ID (PK/FK), adress_1, address_2, city, province_state, postal_code, updated_at (is a timestamp that stores when the row was last edited) + +Architecture Number 2: Changes will be retained (Slowly changing dimension type 2) +If we use Customer_Address_History we can have multiple rows for each customer, each row corresponding to a unique customer address +When a customer changes locations, we add a new row and the old one is no longer used +History is retained, thus, we can report utilizing the current valid address at the time of the order + +Columns could include: +Customer_ID (PK), Customer_Address_ID (FK), adress_1, address_2, city, province_state, postal_code, country, start_date, end_date (will be NA for current address), is_current (true or false, marks whether address is customer's current one) *** @@ -189,7 +201,9 @@ Read: Boykis, V. (2019, October 16). _Neural nets are just people all the way do Consider, for example, concepts of labour, bias, LLM proliferation, moderating content, intersection of technology and society, ect. +The work by Boykis, V. (2019, October 16) discusses various key ethical issues including invisible labour and exploitation, bias in data and illusion of automation. +At first instance, the word artificial intelligence gives the idea that it is solely machine focused. What is left uncredited in this general thought is that despite AI being marketed as automated, it is contingent on large amounts of human labour that is underpaid. For example, ImageNet, a large dataset was formed through the efforts of numerous low-paid workers on platforms such as Amazon Mechanical Turk. For an unreasonably low income, these workers underwent repetitive cognitive tasks with their contributions left unrecognized, despite their efforts building the foundational ground for AI systems. Thus, this raises the ethical question, is it fair to promote AI as automated when it relies on uncredited and underpaid human efforts? +Albeit inevitable, we are all aware that since humans label the data, their biases may undoubtedly get embedded into AI systems. This includes decisions about which categories are selected. Critically, it is the structure of datasets themselves which are dependent on subjectivity such as cultural and political choices. This issue raises the idea that bias is not unintentional, rather it is found within the datasets themselves, reinforcing discrimination, stereotypes and social inequities. +Next, there are a multitude of decisions that humans make in the formation of machine learning, including data creating, labelling, categorization, and validation. All of this contradicts the idea that AI is fully autonomous, thus, this can promote a public misunderstanding in terms of AI’s capabilities and even reinforce undue trust in systems that can succumb to errors and are largely human influenced. +Overall, this reading underscores that AI is a social system that relies on human efforts through their labour, their choices and their biases. Understanding this is important for everyone to look at AI beyond just as technical system. -``` -Your thoughts... -``` diff --git a/02_activities/assignments/DC_Cohort/ERD1.png b/02_activities/assignments/DC_Cohort/ERD1.png new file mode 100644 index 0000000000000000000000000000000000000000..8de66038d12d4f31d00b8217323a14934d333453 GIT binary patch literal 60035 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 B$-e*q literal 0 HcmV?d00001 diff --git a/02_activities/assignments/DC_Cohort/ERD2.png b/02_activities/assignments/DC_Cohort/ERD2.png new file mode 100644 index 0000000000000000000000000000000000000000..850b4286f7c867b22a50b8db4924e8778e8b1590 GIT binary patch literal 103278 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

d?EhX(_!Mfe9n&=16v03U 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 N1fH&bF6*2UngA literal 0 HcmV?d00001 diff --git a/02_activities/assignments/DC_Cohort/assignment2.sql b/02_activities/assignments/DC_Cohort/assignment2.sql index f7515f625..bdd311274 100644 --- a/02_activities/assignments/DC_Cohort/assignment2.sql +++ b/02_activities/assignments/DC_Cohort/assignment2.sql @@ -23,7 +23,11 @@ Edit the appropriate columns -- you're making two edits -- and the NULL rows wil All the other rows will remain the same. */ --QUERY 1 - +SELECT + COALESCE(product_name, '') || ', ' || + COALESCE(product_size, '') || ' (' || + COALESCE(product_qty_type, 'unit') || ')' +FROM product; --END QUERY @@ -41,7 +45,15 @@ HINT: One of these approaches uses ROW_NUMBER() and one uses DENSE_RANK(). Filter the visits to dates before April 29, 2022. */ --QUERY 2 - +SELECT + cp.*, + DENSE_RANK() OVER ( + PARTITION BY cp.customer_id + ORDER BY cp.market_date + ) AS visit_number +FROM customer_purchases cp +WHERE cp.market_date < '2022-04-29' +ORDER BY cp.customer_id, cp.market_date; --END QUERY @@ -53,6 +65,19 @@ only the customer’s most recent visit. HINT: Do not use the previous visit dates filter. */ --QUERY 3 +WITH ranked AS ( + SELECT + cp.*, + DENSE_RANK() OVER ( + PARTITION BY cp.customer_id + ORDER BY cp.market_date DESC + ) AS recent_visit_number + FROM customer_purchases cp +) +SELECT * +FROM ranked +WHERE recent_visit_number = 1 +ORDER BY customer_id, market_date DESC; @@ -66,6 +91,15 @@ You can make this a running count by including an ORDER BY within the PARTITION Filter the visits to dates before April 29, 2022. */ --QUERY 4 +SELECT + cp.*, + COUNT(*) OVER ( + PARTITION BY cp.customer_id, cp.product_id + ORDER BY cp.market_date DESC + ) AS times_customer_bought_product +FROM customer_purchases cp +WHERE cp.market_date < '2022-04-29' +ORDER BY cp.customer_id, cp.product_id, cp.market_date; @@ -85,7 +119,14 @@ Remove any trailing or leading whitespaces. Don't just use a case statement for Hint: you might need to use INSTR(product_name,'-') to find the hyphens. INSTR will help split the column. */ --QUERY 5 - +SELECT + p.product_name, + CASE + WHEN INSTR(p.product_name, '-') > 0 THEN + TRIM(SUBSTR(p.product_name, INSTR(p.product_name, '-') + 1)) + ELSE NULL + END AS description +FROM product p; --END QUERY @@ -95,8 +136,11 @@ Hint: you might need to use INSTR(product_name,'-') to find the hyphens. INSTR w --QUERY 6 - - +SELECT + p.* +FROM product p +WHERE p.product_size GLOB '*[0-9]*'; + --END QUERY @@ -111,7 +155,35 @@ HINT: There are a possibly a few ways to do this query, but if you're struggling with a UNION binding them. */ --QUERY 7 - +WITH sales_by_day AS ( + SELECT + market_date, + SUM(quantity * cost_to_customer_per_qty) AS total_sales + FROM customer_purchases + GROUP BY market_date +), + ranked AS ( + SELECT + market_date, + total_sales, + DENSE_RANK() OVER (ORDER BY total_sales DESC) AS best_rank, + DENSE_RANK() OVER (ORDER BY total_sales ASC) AS worst_rank + FROM sales_by_day +) + SELECT + market_date, + total_sales, + 'highest' AS day_type + FROM ranked + WHERE best_rank = 1 + UNION + SELECT + market_date, + total_sales, + 'lowest' AS day_type + FROM ranked + WHERE worst_rank = 1 + ORDER BY day_type, market_date; --END QUERY @@ -132,7 +204,33 @@ How many customers are there (y). Before your final group by you should have the product of those two queries (x*y). */ --QUERY 8 - +WITH vendor_products AS ( + SELECT DISTINCT + vi.vendor_id, + v.vendor_name, + vi.product_id, + p.product_name, + vi.original_price AS unit_price + FROM vendor_inventory vi + JOIN vendor v ON v.vendor_id = vi.vendor_id + JOIN product p ON p.product_id = vi.product_id +), + +customer_count AS ( + SELECT COUNT(*) AS num_customers + FROM customer +) + +SELECT + vp.vendor_name, + vp.product_name, + 5 AS units_per_customer, + cc.num_customers, + vp.unit_price, + (5 * cc.num_customers * vp.unit_price) AS total_revenue +FROM vendor_products vp +CROSS JOIN customer_count cc +ORDER BY vp.vendor_name, vp.product_name; --END QUERY @@ -145,6 +243,16 @@ It should use all of the columns from the product table, as well as a new column Name the timestamp column `snapshot_timestamp`. */ --QUERY 9 +CREATE TABLE product_units AS +SELECT + p.product_id, + p.product_name, + p.product_size, + p.product_category_id, + p.product_qty_type, + CURRENT_TIMESTAMP AS snapshot_timestamp +FROM product p +WHERE p.product_qty_type = 'unit'; @@ -155,7 +263,24 @@ Name the timestamp column `snapshot_timestamp`. */ This can be any product you desire (e.g. add another record for Apple Pie). */ --QUERY 10 - +INSERT INTO product_units ( + product_id, + product_name, + product_size, + product_category_id, + product_qty_type, + snapshot_timestamp +) + +SELECT + p.product_id, + p.product_name, + p.product_size, + p.product_category_id, + p.product_qty_type, + CURRENT_TIMESTAMP +FROM product p +WHERE p.product_id = 7; --END QUERY @@ -167,6 +292,13 @@ This can be any product you desire (e.g. add another record for Apple Pie). */ HINT: If you don't specify a WHERE clause, you are going to have a bad time.*/ --QUERY 11 +DELETE FROM product_units +WHERE product_id = 7 + AND snapshot_timestamp < ( + SELECT MAX(snapshot_timestamp) + FROM product_units + WHERE product_id = 7 + ); @@ -191,7 +323,21 @@ Finally, make sure you have a WHERE statement to update the right row, When you have all of these components, you can run the update statement. */ --QUERY 12 - +ALTER TABLE product_units +ADD current_quantity INT; + +UPDATE product_units +SET current_quantity = COALESCE ( + ( + SELECT CAST(vi.quantity AS INT) + FROM vendor_inventory vi + WHERE vi.product_id = product_units.product_id + ORDER BY vi.market_date DESC + LIMIT 1 + ), + 0 +); + --END QUERY