From 5653bd22c87bf1fbe5ac6269f5076ad6714a16e0 Mon Sep 17 00:00:00 2001
From: Benjamin Wells <ma301bw@gold.ac.uk>
Date: Fri, 11 Dec 2015 15:27:46 +0000
Subject: [PATCH] Sorting results and basic table join

---
 dnw/sql/dummy_data.sql       | 25 ++++++++++++++++---------
 dnw/sql/practice_queries.sql |  9 +++------
 dnw/sql/recordstore.sql      | 33 +++++++++++++++++++++++----------
 3 files changed, 42 insertions(+), 25 deletions(-)

diff --git a/dnw/sql/dummy_data.sql b/dnw/sql/dummy_data.sql
index dfd060b..fa14c55 100755
--- a/dnw/sql/dummy_data.sql
+++ b/dnw/sql/dummy_data.sql
@@ -1,26 +1,33 @@
-DELETE FROM artist;
-DELETE FROM record;
-
 INSERT INTO record (id, title, artist_id, genre, year, price) 
 VALUES
 (NULL, 'Fear of Music', NULL, 'Rock', 1979, 20.99 ),
+(NULL, 'The Queen Is Dead' NULL, 'Rock', 1986, 10.99),
+(NULL, 'Syro', NULL, 'IDM', 2014, 12.99),
+(NULL, 'The Stone Roses', NULL, 'Rock', 1989, 9.99), 
 (NULL, 'Animals', NULL, 'Rock', 1977, 15.99 );
 
 INSERT INTO artist (id, firstn, lastn)
 VALUES
 (NULL, 'Pink', 'Floyd'),
 (NULL, 'David', 'Bowie'),
+(NULL, 'Aphex', 'Twin'),
 (NULL, 'Talking', 'Heads'),
 (NULL, 'Roxy', 'Music'),
 (NULL, 'Iggy', 'Pop'),
 (NULL, 'Led', 'Zeppelin');
 
-INSERT INTO purchases(id, title, artist_id, genre, year, price)
+INSERT INTO purchases(id, title, genre, year, price)
 VALUES
-(NULL, 'The Dark Side of the Moon', NULL, 'Rock', '1973', 10.95),
-(NULL, 'Fear of Music', NULL, 'Rock', '1979', 8.99);
+(NULL, 'The Dark Side of the Moon', 'Rock', '1973', 10.99),
+(NULL, 'Low', 'Rock', '1977', 11,99), 
+(NULL, 'The Idiot', 'Rock', '1977', 10,99),
+(NULL, 'Fear of Music', 'Rock', '1979', 8.99)'
+(NULL, 'Who's Next' 'Rock' '1971' 12.99);
 
-INSERT INTO employees(emp_id, employee_first_name, employee_second_name)
+INSERT INTO employees(emp_id, employee_first_name, employee_second_name, date_of_birth)
 VALUES
-(NULL, John, Anderson),
-(NULL, Samantha, James);
+(NULL, 'John', 'Anderson', 13/09/1990),
+(NULL, 'Christina', 'Thomas', 14/02/1991),
+(NULL, 'Andy', 'Nolan', 03/12/1989),
+(NULL, 'Alex', 'Reginald', 22/10/1993),
+(NULL, 'Samantha', 'James', 01/05/1986);
diff --git a/dnw/sql/practice_queries.sql b/dnw/sql/practice_queries.sql
index 8333299..3a4edb6 100755
--- a/dnw/sql/practice_queries.sql
+++ b/dnw/sql/practice_queries.sql
@@ -1,9 +1,6 @@
-/* Simple query
-Fetch first_name and last_name columns from artist table */
-SELECT first_name, last_name FROM artist;
 
-/* Query with filters 
-Fetches titles from record table where year is 1973 and genre is Reggae */
+SELECT firstn, lastn FROM artist;
+
 SELECT title FROM record 
 WHERE year = 1979
-AND genre = "Rock";
\ No newline at end of file
+AND genre = "Rock";
diff --git a/dnw/sql/recordstore.sql b/dnw/sql/recordstore.sql
index f9716bf..63189d9 100755
--- a/dnw/sql/recordstore.sql
+++ b/dnw/sql/recordstore.sql
@@ -1,17 +1,31 @@
-DROP TABLE IF EXISTS 'artist' ;
+
+DROP TABLE IF EXISTS artist, record, purchases, employees;
+
+$sql = "SELECT title, year, genre, price
+FROM record
+ORDER BY title";
+
+$sql = "SELECT title, year, genre, price
+FROM record
+ORDER BY title, year";
+
+$sql = "SELECT artist.firstn, artist.lastn, record.genre, record.price
+FROM artist
+JOIN record
+ON artist.record_id=artist.id;"
 
 CREATE TABLE artist (
-artist_id INT AUTO_INCREMENT,
-firstn TINYTEXT,
-lastn TINYTEXT,
+id INT AUTO_INCREMENT,
+firstn VARCHAR(40),
+lastn VARCHAR(40),
 PRIMARY KEY (id),
 );
 
 CREATE TABLE record (
-record_id INT AUTO_INCREMENT,
-title VARCHAR(50),
-artist_id INT,
+id INT AUTO_INCREMENT,
+title VARCHAR(60),
 type TINYTEXT,
+year YEAR(4),
 genre TINYTEXT,
 price DECIMAL(10, 2) unsigned,
 PRIMARY KEY(id),
@@ -36,7 +50,6 @@ CREATE TABLE employees (
 emp_id INT AUTO_INCREMENT,
 employee_first_name TINYTEXT,
 employee_second_name TINYTEXT,
-PRIMARY KEY(id),
-FOREIGN KEY(artist_id)
-        REFERENCES artist(id)
+date_of_birth DATE(),
+PRIMARY KEY(id)
 );
-- 
GitLab