From 1272a147254d405529eb4752493258184e4d7ac6 Mon Sep 17 00:00:00 2001 From: michaelgrasshopper <107348388+michaelgrasshopper@users.noreply.github.com> Date: Fri, 3 Jul 2026 19:00:17 +0200 Subject: [PATCH 1/4] Add files via upload --- sakila-schema.sql | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 sakila-schema.sql diff --git a/sakila-schema.sql b/sakila-schema.sql new file mode 100644 index 00000000..23524899 --- /dev/null +++ b/sakila-schema.sql @@ -0,0 +1,46 @@ +USE sakila; + +SHOW TABLES; +SELECT * FROM actor; +SELECT * FROM film; +SELECT * FROM customer; + +SELECT title FROM film; + +SELECT name AS language FROM language; + +SELECT first_name FROM staff; + +SELECT DISTINCT release_year FROM film; + +SELECT COUNT(*) AS number_of_stores FROM store; + +SELECT COUNT(*) AS number_of_employees FROM staff; + +SELECT COUNT(DISTINCT film_id) AS films_available_for_rent +FROM inventory; + +SELECT COUNT(DISTINCT inventory.film_id) AS films_rented +FROM rental +JOIN invetory ON rental.inventory_id = inventory.inventory_id; + +SELECT COUNT(DISTINCT last_name) AS distinct_last_names +FROM actor; + +SELECT title, length +FROM film +ORDER BY length DESC +LIMIT 10; + +SELECT * +FROM actor +WHERE first_name = 'SCARLETT'; + +SELECT title, length +FROM film +WHERE title LIKE '%ARMAGEDDON' + AND length > 100; + +SELECT COUNT(*) AS behind_the_scenes_count +FROM film +WHERE special_features LIKE '%Behind The Scenes%'; \ No newline at end of file From c1cb0bc88fbc7e18ae0e650a90f11015404e4e2c Mon Sep 17 00:00:00 2001 From: michaelgrasshopper <107348388+michaelgrasshopper@users.noreply.github.com> Date: Sun, 5 Jul 2026 23:01:32 +0200 Subject: [PATCH 2/4] Add files via upload --- Challenge 1.sql | 40 ++++++++++++++++++++++++++++++++++++++++ Challenge 2.sql | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 Challenge 1.sql create mode 100644 Challenge 2.sql diff --git a/Challenge 1.sql b/Challenge 1.sql new file mode 100644 index 00000000..ff26929b --- /dev/null +++ b/Challenge 1.sql @@ -0,0 +1,40 @@ +USE sakila; + +SELECT + MAX(length) AS max_duration, + MIN(length) AS min_duration +FROM film; + +SELECT + FLOOR(AVG(length) / 60) AS avg_hours, + ROUND(AVG(length) % 60) AS avg_minutes +FROM film; + +SELECT + DATEDIFF(MAX(rental_date), MIN(rental_date)) AS days_operating +FROM rental; + +SELECT + rental_id, + rental_date, + MONTHNAME(rental_date) AS rental_month, + DAYNAME(rental_date) AS rental_weekday +FROM rental +LIMIT 20; + +SELECT + rental_id, + rental_date, + DAYNAME(rental_date) AS weekday_name, + CASE + WHEN DAYOFWEEK(rental_date) IN (1, 7) THEN 'weekend' + ELSE 'workday' + END AS DAY_TYPE +FROM rental +LIMIT 20; + +SELECT + title, + IFNULL(rental_duration, 'Not Available') AS rental_duration +FROM customer +ORDER BY last_name ASC; \ No newline at end of file diff --git a/Challenge 2.sql b/Challenge 2.sql new file mode 100644 index 00000000..45d10909 --- /dev/null +++ b/Challenge 2.sql @@ -0,0 +1,36 @@ +USE sakila; + +SELECT COUNT(*) AS total_films +FROM film; + +SELECT + rating, + COUNT(*) AS number_of_films +FROM film +GROUP BY rating; + +SELECT + rating, + COUNT(*) AS number_of_films +FROM film +GROUP BY rating +ORDER BY number_of_films DESC; + +SELECT + rating, + ROUND(AVG(length), 2) AS mean_duration +FROM film +GROUP BY rating +ORDER BY mean_duration DESC; + +SELECT + rating, + ROUND(AVG(length), 2) AS mean_duration +FROM film +GROUP BY rating +HAVING AVG(length) > 120; + +SELECT last_name +FROM actor +GROUP BY last_name +HAVING COUNT(*) = 1; \ No newline at end of file From 78e2a0f42b9b4d9f27cf1c180edd93c1edeae14b Mon Sep 17 00:00:00 2001 From: michaelgrasshopper <107348388+michaelgrasshopper@users.noreply.github.com> Date: Sun, 5 Jul 2026 23:03:56 +0200 Subject: [PATCH 3/4] Delete Challenge 2.sql --- Challenge 2.sql | 36 ------------------------------------ 1 file changed, 36 deletions(-) delete mode 100644 Challenge 2.sql diff --git a/Challenge 2.sql b/Challenge 2.sql deleted file mode 100644 index 45d10909..00000000 --- a/Challenge 2.sql +++ /dev/null @@ -1,36 +0,0 @@ -USE sakila; - -SELECT COUNT(*) AS total_films -FROM film; - -SELECT - rating, - COUNT(*) AS number_of_films -FROM film -GROUP BY rating; - -SELECT - rating, - COUNT(*) AS number_of_films -FROM film -GROUP BY rating -ORDER BY number_of_films DESC; - -SELECT - rating, - ROUND(AVG(length), 2) AS mean_duration -FROM film -GROUP BY rating -ORDER BY mean_duration DESC; - -SELECT - rating, - ROUND(AVG(length), 2) AS mean_duration -FROM film -GROUP BY rating -HAVING AVG(length) > 120; - -SELECT last_name -FROM actor -GROUP BY last_name -HAVING COUNT(*) = 1; \ No newline at end of file From faf6cfcf0f7a05e03b7a7ddb51537a2f68b1ac17 Mon Sep 17 00:00:00 2001 From: michaelgrasshopper <107348388+michaelgrasshopper@users.noreply.github.com> Date: Sun, 5 Jul 2026 23:04:06 +0200 Subject: [PATCH 4/4] Delete Challenge 1.sql --- Challenge 1.sql | 40 ---------------------------------------- 1 file changed, 40 deletions(-) delete mode 100644 Challenge 1.sql diff --git a/Challenge 1.sql b/Challenge 1.sql deleted file mode 100644 index ff26929b..00000000 --- a/Challenge 1.sql +++ /dev/null @@ -1,40 +0,0 @@ -USE sakila; - -SELECT - MAX(length) AS max_duration, - MIN(length) AS min_duration -FROM film; - -SELECT - FLOOR(AVG(length) / 60) AS avg_hours, - ROUND(AVG(length) % 60) AS avg_minutes -FROM film; - -SELECT - DATEDIFF(MAX(rental_date), MIN(rental_date)) AS days_operating -FROM rental; - -SELECT - rental_id, - rental_date, - MONTHNAME(rental_date) AS rental_month, - DAYNAME(rental_date) AS rental_weekday -FROM rental -LIMIT 20; - -SELECT - rental_id, - rental_date, - DAYNAME(rental_date) AS weekday_name, - CASE - WHEN DAYOFWEEK(rental_date) IN (1, 7) THEN 'weekend' - ELSE 'workday' - END AS DAY_TYPE -FROM rental -LIMIT 20; - -SELECT - title, - IFNULL(rental_duration, 'Not Available') AS rental_duration -FROM customer -ORDER BY last_name ASC; \ No newline at end of file