Database SQL Select and Join Query

profilenorritt
SQL_ALL.txt

SET foreign_key_checks = 0; CREATE TABLE IF NOT EXISTS `Customers` ( `CustomerID` int NOT NULL AUTO_INCREMENT, `CustomerLastName` varchar(50) NOT NULL, `CustomerFirstName` varchar(50) NOT NULL, `CustomerAddress` varchar(100) NOT NULL, `AptNum` varchar(20) NOT NULL, `City` varchar(50) NOT NULL, `State` varchar(3) NOT NULL, `ZipCode` varchar(9) NOT NULL, `HomePhone` varchar(15), `MobilePhone` varchar(15), `OtherPhone` varchar(15), PRIMARY KEY (`CustomerID`)); INSERT INTO `Customers` (`CustomerLastName`, `CustomerFirstName`, `CustomerAddress`, `AptNum`, `City`, `State`, `ZipCode`, `HomePhone`, `MobilePhone`, `OtherPhone`) VALUES ('Martinez', 'Jose', '10201 W. Beaver ST', '147', 'Jacksonville', 'FL', '32220', '', '904-444-2137', ''), ('Doe', 'Joe', '4241 Migration DR', '10', 'Jacksonville', 'FL', '32257', '', '904-521-8255', ''); CREATE TABLE IF NOT EXISTS `Donuts` ( `DonutID` int NOT NULL AUTO_INCREMENT, `DonutName` VARCHAR (100), `Description` VARCHAR (100), `UnitPrice` Decimal (10,2), PRIMARY KEY (`DonutID`)); INSERT INTO `Donuts` (`DonutName`, `Description`, `UnitPrice`) VALUES ('Plain', 'Plain Donut', '1.50'), ('Glazed', 'Glaze Donut', '1.75'), ('Cinnamon', 'Cinnamon Donut', '1.75'), ('Chocolate', 'Chocolate Donut', '1.75'), ('Sprinkle', 'Sprinkle Donut', '1.75'), ('Gluten-Free', 'Gluten-Free Donut', '2.00'); CREATE INDEX Name ON Donuts (DonutName); CREATE TABLE IF NOT EXISTS `OrdersQty` ( `DonutOrderID` int NOT NULL AUTO_INCREMENT, `DonutID` int NOT NULL, `Qty` int NOT NULL, PRIMARY KEY (`DonutOrderID`, `DonutID`), FOREIGN KEY (`DonutID`) REFERENCES Donuts (DonutID), INDEX Donuts(DonutID)); INSERT INTO OrdersQty (DonutID, Qty) VALUES ((SELECT DonutID FROM Donuts WHERE DonutID = 1), 1), ((SELECT DonutID FROM Donuts WHERE DonutID = 2), 5), ((SELECT DonutID FROM Donuts WHERE DonutID = 3), 12), ((SELECT DonutID FROM Donuts WHERE DonutID = 4), 3), ((SELECT DonutID FROM Donuts WHERE DonutID = 5), 4), ((SELECT DonutID FROM Donuts WHERE DonutID = 6), 5); CREATE TABLE IF NOT EXISTS `Orders` ( `DonutOrderID` int NOT NULL AUTO_INCREMENT, `OrderDate` DATETIME NOT NULL, `CustomerID` int NOT NULL, `Notes` varchar(250), PRIMARY KEY (`DonutOrderID`), INDEX Customers (CustomerID), FOREIGN KEY (`CustomerID`) REFERENCES Customers (CustomerID), INDEX OrdersQTY (DonutOrderID) ); INSERT INTO Orders (DonutOrderID, OrderDate, CustomerID, Notes) VALUES ((SELECT DonutOrderID FROM OrdersQty WHERE DonutOrderID = 1), '2018/08/03', (SELECT CustomerID FROM Customers WHERE CustomerID = 1), 'This is a test order'); CREATE VIEW CustInfo AS Select CONCAT(CustomerFirstName, ' ', CustomerLastName) AS CustomerName, CustomerAddress, AptNum, City, State, ZipCode, HomePhone, MobilePhone, OtherPhone, CustomerID from Customers ORDER BY CustomerID;