diff --git a/lab-sql-basic-queries.sql b/lab-sql-basic-queries.sql new file mode 100644 index 0000000..d8f40a4 --- /dev/null +++ b/lab-sql-basic-queries.sql @@ -0,0 +1,84 @@ +USE Sakila; + +-- 1. Display all available tables in the Sakila database. + +show tables; + +-- 2. Retrieve all the data from the tables actor, film and customer. +-- 2.1. Retrieve all the data from the tables actor. +SELECT * +FROM actor; + +-- 2.2. Retrieve all the data from the tables film. +SELECT * +FROM film; + +-- 2.3. Retrieve all the data from the tables customer. +SELECT * +FROM customer; + + +-- 3. Retrieve the following columns from their respective tables: +-- 3.1 Titles of all films from the film table: +SELECT title +FROM film; + +-- 3.2 List of languages used in films, with the column aliased as language from the language table +SELECT name AS language +FROM language; + +-- 3.3 List of first names of all employees from the staff table +SELECT first_name +FROM staff; + +-- 4. Retrieve unique release years. +SELECT DISTINCT release_year +FROM film; + +-- 5. Counting records for database insights: +-- 5.1 Determine the number of stores that the company has. +SELECT COUNT(*) +FROM store +WHERE store_id IS NOT NULL; + +-- 5.2 Determine the number of employees that the company has. +SELECT COUNT(*) +FROM staff +WHERE staff_id IS NOT NULL; + +-- 5.3 Determine how many films are available for rent and how many have been rented. +-- 5.3.1 Determine how many films are available for rent +SELECT COUNT(film_id) as amount_of_avaliable_films +FROM inventory +WHERE film_id IS NOT NULL; + +-- 5.3.2 Determine how many films have been rented +SELECT COUNT(film_id) as amount_of_rented_films +FROM inventory +WHERE inventory_id IN (SELECT inventory_id from rental); + +-- 5.4 Determine the number of distinct last names of the actors in the database. +SELECT COUNT(DISTINCT last_name) as last_name_count +FROM actor; + +-- 6. Retrieve the 10 longest films. +SELECT * +FROM film +ORDER BY length DESC +LIMIT 10; + +-- 7. Use filtering techniques in order to: +-- 7.1 Retrieve all actors with the first name "SCARLETT". +SELECT * +FROM actor +WHERE UPPER(first_name) = "SCARLETT"; + +-- 7.2 Retrieve all movies that have ARMAGEDDON in their title and have a duration longer than 100 minutes. +SELECT title +FROM film +WHERE title IS NOT NULL AND length > 100 AND title LIKE '%ARMAGEDDON%'; + +-- 7.3 Determine the number of films that include Behind the Scenes content +SELECT COUNT(title) as 'count of titles with Behind the Scenes content' +FROM film +WHERE special_features LIKE '%Behind the Scenes%';