From 6a3130c447b657130296f08e783f400bae13349b Mon Sep 17 00:00:00 2001 From: Kerry Ferguson Date: Thu, 9 Oct 2025 18:44:54 +0000 Subject: [PATCH 1/2] adds kerryferguson sql file with queries --- .../src/main/resources/queries/kerryferguson.sql | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql diff --git a/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql b/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql new file mode 100644 index 000000000..63cd3ef10 --- /dev/null +++ b/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql @@ -0,0 +1,12 @@ +SELECT media_type, COUNT(*) as count +FROM mediaITEMS +GROUP BY media_type; + +SELECT SUM(pages) +FROM mediaITEMS, guests, JSON_EACH(guests.checkedOutItems) +WHERE JSON_EXTRACT(JSON_EACH.value, '$.itemId') = mediaITEMS.id; + +SELECT guests.name, guests.email, + JSON_EXTRACT(JSON_EACH.value, '$.itemId') as checked_out_item_id +FROM guests +LEFT JOIN JSON_EACH(guests.checkedOutItems); \ No newline at end of file From 39116c5691f0ef33be410e290ce3269a4c38577c Mon Sep 17 00:00:00 2001 From: Kerry Ferguson Date: Thu, 9 Oct 2025 20:35:48 +0000 Subject: [PATCH 2/2] fixedqueries, should be working now --- .../main/resources/queries/kerryferguson.sql | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql b/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql index 63cd3ef10..762bdd678 100644 --- a/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql +++ b/lesson_25/db/db_app/src/main/resources/queries/kerryferguson.sql @@ -1,12 +1,13 @@ -SELECT media_type, COUNT(*) as count -FROM mediaITEMS -GROUP BY media_type; +SELECT type, COUNT(*) as count +FROM media_items +GROUP BY type; -SELECT SUM(pages) -FROM mediaITEMS, guests, JSON_EACH(guests.checkedOutItems) -WHERE JSON_EXTRACT(JSON_EACH.value, '$.itemId') = mediaITEMS.id; +SELECT SUM(pages) +FROM media_items +JOIN checked_out_items ON media_items.id = checked_out_items.item_id; + +SELECT guests.name, guests.email, media_items.title +FROM guests +LEFT JOIN checked_out_items ON guests.email = checked_out_items.email +LEFT JOIN media_items ON checked_out_items.item_id = media_items.id; -SELECT guests.name, guests.email, - JSON_EXTRACT(JSON_EACH.value, '$.itemId') as checked_out_item_id -FROM guests -LEFT JOIN JSON_EACH(guests.checkedOutItems); \ No newline at end of file