From a167c277d044db3cd4effe902722229e1dcfe24f Mon Sep 17 00:00:00 2001
From: Motodies <39949690+Motodies@users.noreply.github.com>
Date: Sat, 26 Apr 2025 10:46:16 +0200
Subject: [PATCH 1/3] LAB WEEK 6 MYSQL
---
.idea/.gitignore | 10 ++
...lab-java-normalization-ddl-aggregation.iml | 9 ++
.idea/misc.xml | 6 +
.idea/modules.xml | 8 ++
.idea/sqldialects.xml | 7 ++
.idea/vcs.xml | 6 +
AIrline.sql | 113 ++++++++++++++++++
Books.sql | 35 ++++++
8 files changed, 194 insertions(+)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/lab-java-normalization-ddl-aggregation.iml
create mode 100644 .idea/misc.xml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/sqldialects.xml
create mode 100644 .idea/vcs.xml
create mode 100644 AIrline.sql
create mode 100644 Books.sql
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..7bc07ec
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,10 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Environment-dependent path to Maven home directory
+/mavenHomeManager.xml
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/lab-java-normalization-ddl-aggregation.iml b/.idea/lab-java-normalization-ddl-aggregation.iml
new file mode 100644
index 0000000..d6ebd48
--- /dev/null
+++ b/.idea/lab-java-normalization-ddl-aggregation.iml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..31e1ebc
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..152076a
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml
new file mode 100644
index 0000000..53415d5
--- /dev/null
+++ b/.idea/sqldialects.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/AIrline.sql b/AIrline.sql
new file mode 100644
index 0000000..14620c8
--- /dev/null
+++ b/AIrline.sql
@@ -0,0 +1,113 @@
+CREATE DATABASE airline_db;
+
+USE airline_db;
+
+CREATE TABLE customers(
+ id INT AUTO_INCREMENT PRIMARY KEY,
+ customer_name varchar(50),
+ status varchar(50),
+ total_mileage INT
+);
+
+CREATE TABLE aircrafts(
+ id INT AUTO_INCREMENT PRIMARY KEY,
+ name varchar(50),
+ total_seats INT
+);
+
+CREATE TABLE flights
+(
+ flight_id INT AUTO_INCREMENT PRIMARY KEY,
+ flight_number varchar(5),
+ mileage INT,
+ aircraft_id INT,
+ FOREIGN KEY (aircraft_id) REFERENCES aircrafts(id)
+);
+
+CREATE TABLE bookings
+(
+ id INT AUTO_INCREMENT PRIMARY KEY,
+ customer_id INT,
+ flight_number INT,
+ FOREIGN KEY (flight_number) REFERENCES flights(flight_id),
+ FOREIGN KEY (customer_id) REFERENCES customers(id)
+);
+
+INSERT INTO customers(id, customer_name, status, total_mileage)
+ VALUES
+ (1,'Agustine Riviera','Silver',115235),
+ (2,'Alaina Sepulvida','None',6008),
+ (3,'Tom Jones','Gold',205767),
+ (4,'Jessica James','Silver',127656),
+ (5,'Sam Rio','None',2653),
+ (6,'Ana Janco','Silver',136773),
+ (7,'Jennifer Cortez','Gold',300582),
+ (8,'Christian Janco','Silver',14642)
+;
+
+INSERT INTO aircrafts(id, name, total_seats)
+ VALUES
+ (1,'Boeing 747',400),
+ (2,'Airbus A330',236),
+ (3,'Boeing 777',264)
+;
+
+INSERT INTO flights(flight_id, flight_number, mileage, aircraft_id)
+ VALUES
+ (1,'DL143',135,1),
+ (2,'DL122',4370,2),
+ (3,'DL53',2078,3),
+ (4,'DL222',4370,2),
+ (5,'DL37',1765,2)
+;
+
+INSERT INTO bookings(id, customer_id, flight_number)
+ VALUES
+ (1,1,1),
+ (2,1,2),
+ (3,2,2),
+ (4,1,1),
+ (5,3,2),
+ (6,3,3),
+ (7,1,1),
+ (8,5,1),
+ (9,1,1),
+ (10,3,4),
+ (11,4,1),
+ (12,5,1),
+ (13,6,2),
+ (14,7,2),
+ (15,4,2),
+ (16,5,5),
+ (17,8,4)
+;
+
+SELECT COUNT(DISTINCT flight_number) FROM flights;
+
+SELECT AVG(mileage) FROM flights;
+
+SELECT AVG(total_seats) FROM aircrafts;
+
+SELECT status, AVG(total_mileage) FROM customers GROUP BY status;
+
+SELECT status, MAX(total_mileage) FROM customers GROUP BY status;
+
+SELECT COUNT(*) FROM aircrafts WHERE name LIKE '%Boeing%';
+
+SELECT * FROM flights WHERE mileage BETWEEN 300 AND 2000;
+
+SELECT c.status, AVG(f.mileage)
+FROM bookings b
+ JOIN customers c ON b.customer_id = c.id
+ JOIN flights f ON b.flight_number = f.flight_id
+GROUP BY c.status;
+
+SELECT a.name, COUNT(*) AS total_bookings
+FROM bookings b
+ JOIN customers c ON b.customer_id = c.id
+ JOIN flights f ON b.flight_number = f.flight_id
+ JOIN aircrafts a ON f.aircraft_id = a.id
+WHERE c.status = 'Gold'
+GROUP BY a.name
+ORDER BY total_bookings DESC
+ LIMIT 1;
\ No newline at end of file
diff --git a/Books.sql b/Books.sql
new file mode 100644
index 0000000..42c8698
--- /dev/null
+++ b/Books.sql
@@ -0,0 +1,35 @@
+CREATE DATABASE book_db;
+
+USE book_db;
+
+CREATE TABLE author
+(
+ id int AUTO_INCREMENT PRIMARY KEY,
+ author varchar(50)
+);
+CREATE TABLE books
+(
+ id int AUTO_INCREMENT PRIMARY KEY,
+ author_id int,
+ title varchar(50),
+ word_count int,
+ views int,
+ FOREIGN KEY (author_id) REFERENCES author (id)
+);
+
+INSERT INTO author(id, author)
+ VALUES
+ (1,'Maria Charlotte'),
+ (2,'Juan Perez'),
+ (3,'Gemma Alcocer')
+;
+
+INSERT INTO books(id, author_id, title, word_count, views)
+ VALUES
+ (1,1,'Best Paint Colors',814,14),
+ (2,2,'Small Space Decorating Tips',1146,221),
+ (3,1,'Hot accessories',986,105),
+ (4,1,'Mixing Textures',765,22),
+ (5,2,'Homemade Art Hacks',1002,193),
+ (6,3,'Refinishing Wood Floors',1571,7542)
+
From 758aad81abb35656b31bd7ffe1ec28cd46060519 Mon Sep 17 00:00:00 2001
From: Motodies <39949690+Motodies@users.noreply.github.com>
Date: Sat, 26 Apr 2025 10:52:59 +0200
Subject: [PATCH 2/3] LAB WEEK 6 MYSQL
---
.idea/dataSources.xml | 17 +++++++++++++
.idea/sqldialects.xml | 4 +--
AIrline.sql | 57 +++++++++++++++++++++----------------------
3 files changed, 47 insertions(+), 31 deletions(-)
create mode 100644 .idea/dataSources.xml
diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
new file mode 100644
index 0000000..0654aca
--- /dev/null
+++ b/.idea/dataSources.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ mysql.8
+ true
+ com.mysql.cj.jdbc.Driver
+ jdbc:mysql://localhost:3306
+
+
+
+
+
+ $ProjectFileDir$
+
+
+
\ No newline at end of file
diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml
index 53415d5..1225da6 100644
--- a/.idea/sqldialects.xml
+++ b/.idea/sqldialects.xml
@@ -1,7 +1,7 @@
-
-
+
+
\ No newline at end of file
diff --git a/AIrline.sql b/AIrline.sql
index 14620c8..5c757eb 100644
--- a/AIrline.sql
+++ b/AIrline.sql
@@ -17,8 +17,7 @@ CREATE TABLE aircrafts(
CREATE TABLE flights
(
- flight_id INT AUTO_INCREMENT PRIMARY KEY,
- flight_number varchar(5),
+ flight_number varchar(5) PRIMARY KEY ,
mileage INT,
aircraft_id INT,
FOREIGN KEY (aircraft_id) REFERENCES aircrafts(id)
@@ -28,8 +27,8 @@ CREATE TABLE bookings
(
id INT AUTO_INCREMENT PRIMARY KEY,
customer_id INT,
- flight_number INT,
- FOREIGN KEY (flight_number) REFERENCES flights(flight_id),
+ flight_number varchar(5),
+ FOREIGN KEY (flight_number) REFERENCES flights(flight_number),
FOREIGN KEY (customer_id) REFERENCES customers(id)
);
@@ -52,34 +51,34 @@ INSERT INTO aircrafts(id, name, total_seats)
(3,'Boeing 777',264)
;
-INSERT INTO flights(flight_id, flight_number, mileage, aircraft_id)
+INSERT INTO flights( flight_number, mileage, aircraft_id)
VALUES
- (1,'DL143',135,1),
- (2,'DL122',4370,2),
- (3,'DL53',2078,3),
- (4,'DL222',4370,2),
- (5,'DL37',1765,2)
+ ('DL143',135,1),
+ ('DL122',4370,2),
+ ('DL53',2078,3),
+ ('DL222',4370,2),
+ ('DL37',1765,2)
;
INSERT INTO bookings(id, customer_id, flight_number)
VALUES
- (1,1,1),
- (2,1,2),
- (3,2,2),
- (4,1,1),
- (5,3,2),
- (6,3,3),
- (7,1,1),
- (8,5,1),
- (9,1,1),
- (10,3,4),
- (11,4,1),
- (12,5,1),
- (13,6,2),
- (14,7,2),
- (15,4,2),
- (16,5,5),
- (17,8,4)
+ (1, 1, 'DL143'),
+ (2, 1, 'DL122'),
+ (3, 2, 'DL122'),
+ (4, 1, 'DL143'),
+ (5, 3, 'DL122'),
+ (6, 3, 'DL53'),
+ (7, 1, 'DL143'),
+ (8, 4, 'DL143'),
+ (9, 1, 'DL143'),
+ (10, 3, 'DL222'),
+ (11, 5, 'DL143'),
+ (12, 4, 'DL143'),
+ (13, 6, 'DL222'),
+ (14, 7, 'DL222'),
+ (15, 5, 'DL122'),
+ (16, 4, 'DL37'),
+ (17, 8, 'DL222');
;
SELECT COUNT(DISTINCT flight_number) FROM flights;
@@ -99,13 +98,13 @@ SELECT * FROM flights WHERE mileage BETWEEN 300 AND 2000;
SELECT c.status, AVG(f.mileage)
FROM bookings b
JOIN customers c ON b.customer_id = c.id
- JOIN flights f ON b.flight_number = f.flight_id
+ JOIN flights f ON b.flight_number = f.flight_number
GROUP BY c.status;
SELECT a.name, COUNT(*) AS total_bookings
FROM bookings b
JOIN customers c ON b.customer_id = c.id
- JOIN flights f ON b.flight_number = f.flight_id
+ JOIN flights f ON b.flight_number = f.flight_number
JOIN aircrafts a ON f.aircraft_id = a.id
WHERE c.status = 'Gold'
GROUP BY a.name
From 8b75579a06a9d5bdd4355578ed79cd76f18f7991 Mon Sep 17 00:00:00 2001
From: Motodies <39949690+Motodies@users.noreply.github.com>
Date: Sat, 26 Apr 2025 10:57:13 +0200
Subject: [PATCH 3/3] LAB WEEK 6 MYSQL
---
AIrline.sql | 4 ++--
Books.sql | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/AIrline.sql b/AIrline.sql
index 5c757eb..f56ba0b 100644
--- a/AIrline.sql
+++ b/AIrline.sql
@@ -56,8 +56,8 @@ INSERT INTO flights( flight_number, mileage, aircraft_id)
('DL143',135,1),
('DL122',4370,2),
('DL53',2078,3),
- ('DL222',4370,2),
- ('DL37',1765,2)
+ ('DL222',1765,3),
+ ('DL37',531,1)
;
INSERT INTO bookings(id, customer_id, flight_number)
diff --git a/Books.sql b/Books.sql
index 42c8698..5a71b4e 100644
--- a/Books.sql
+++ b/Books.sql
@@ -28,8 +28,8 @@ INSERT INTO books(id, author_id, title, word_count, views)
VALUES
(1,1,'Best Paint Colors',814,14),
(2,2,'Small Space Decorating Tips',1146,221),
- (3,1,'Hot accessories',986,105),
+ (3,1,'Hot Accessories',986,105),
(4,1,'Mixing Textures',765,22),
- (5,2,'Homemade Art Hacks',1002,193),
+ (5,1,'Homemade Art Hacks',1002,193),
(6,3,'Refinishing Wood Floors',1571,7542)