DROP TABLE IF EXISTS `Vendors`;
CREATE TABLE `Vendors`
( `vend_id` CHAR(10) NOT NULL PRIMARY KEY
, `vend_name` CHAR(50) NOT NULL
, `vend_address` CHAR(50) NULL DEFAULT NULL
, `vend_city` CHAR(50) NULL DEFAULT NULL
, `vend_state` CHAR(5) NULL DEFAULT NULL
, `vend_zip` CHAR(10) NULL DEFAULT NULL
, `vend_country` CHAR(50) NULL DEFAULT NULL
);
INSERT INTO `Vendors` VALUES
('BRS01', 'Bears R Us', '123 Main Street', 'Bear Town', 'MI', '44444', 'USA'),
('BRE02', 'Bear Emporium', '500 Park Street', 'Anytown', 'OH', '44333', 'USA'),
('DLL01', 'Doll House Inc.', '555 High Street', 'Dollsville', 'CA', '99999', 'USA'),
('FRB01', 'Furball Inc.', '1000 5th Avenue', 'New York', 'NY', '11111', 'USA'),
('FNG01', 'Fun and Games', '42 Galaxy Road', 'London', NULL, 'N16 6PS', 'England'),
('JTS01', 'Jouets et ours', '1 Rue Amusement', 'Paris', NULL, '45678', 'France')
;
SELECT "`Vendors` Table Content:" FROM `Vendors` WHERE 1=0;
SELECT * FROM `Vendors`;
DROP TABLE IF EXISTS `Customers`;
CREATE TABLE `Customers`
( `cust_id` char(10) NOT NULL PRIMARY KEY
, `cust_name` char(50) NOT NULL
, `cust_address` char(50) NULL DEFAULT NULL
, `cust_city` char(50) NULL DEFAULT NULL
, `cust_state` char(5) NULL DEFAULT NULL
, `cust_zip` char(10) NULL DEFAULT NULL
, `cust_country` char(50) NULL DEFAULT NULL
, `cust_contact` char(50) NULL DEFAULT NULL
, `cust_email` char(255) NULL DEFAULT NULL
);
INSERT INTO `Customers` VALUES
('1000000001', 'Village Toys', '200 Maple Lane', 'Detroit', 'MI', '44444', 'USA', 'John Smith', 'sales@villagetoys.com'),
('1000000002', 'Kids Place', '333 South Lake Drive', 'Columbus', 'OH', '43333', 'USA', 'Michelle Green', NULL),
('1000000003', 'Fun4All', '1 Sunny Place', 'Muncie ', 'IN', '42222', 'USA', 'Jim Jones', 'jjones@fun4all.com'),
('1000000004', 'Fun4All', '829 Riverside Drive', 'Phoenix', 'AZ', '88888', 'USA', 'Denise L. Stephens', 'dstephens@fun4all.com'),
('1000000005', 'The Toy Store', '4545 53rd Street', 'Chicago', 'IL', '54545', 'USA', 'Kim Howard', NULL)
;
SELECT "`Customers` Table Content:" FROM `Customers` WHERE 1=0;
SELECT * FROM `Customers`;
DROP TABLE IF EXISTS `Orders`;
CREATE TABLE `Orders`
( `order_num` INT(11) NOT NULL PRIMARY KEY
, `order_date` DATETIME NOT NULL
, `cust_id` CHAR(10) NOT NULL
, FOREIGN KEY (`cust_id`) REFERENCES `Customers` (`cust_id`)
);
INSERT INTO `Orders` VALUES
(20005, '2004-05-01 00:00:00', '1000000001'),
(20006, '2004-01-12 00:00:00', '1000000003'),
(20007, '2004-01-30 00:00:00', '1000000004'),
(20008, '2004-02-03 00:00:00', '1000000005'),
(20009, '2004-02-08 00:00:00', '1000000001')
;
SELECT "`Orders` Table Content:" FROM `Orders` WHERE 1=0;
SELECT * FROM `Orders`;
DROP TABLE IF EXISTS `Products`;
CREATE TABLE `Products`
( `prod_id` CHAR(10) NOT NULL PRIMARY KEY
, `vend_id` CHAR(10) NOT NULL
, `prod_name` CHAR(255) NOT NULL
, `prod_price` DECIMAL(8,2) NOT NULL
, `prod_desc` TEXT NULL DEFAULT NULL
, FOREIGN KEY (`vend_id`) REFERENCES `Vendors` (`vend_id`)
);
INSERT INTO `Products` VALUES
('BR01', 'BRS01', '8 inch teddy bear', 5.99, '8 inch teddy bear, comes with cap and jacket'),
('BR02', 'BRS01', '12 inch teddy bear', 8.99, '12 inch teddy bear, comes with cap and jacket'),
('BR03', 'BRS01', '18 inch teddy bear', 11.99, '18 inch teddy bear, comes with cap and jacket'),
('BNBG01', 'DLL01', 'Fish bean bag toy', 3.49, 'Fish bean bag toy, complete with bean bag worms with which to feed it'),
('BNBG02', 'DLL01', 'Bird bean bag toy', 3.49, 'Bird bean bag toy, eggs are not included'),
('BNBG03', 'DLL01', 'Rabbit bean bag toy', 3.49, 'Rabbit bean bag toy, comes with bean bag carrots'),
('RGAN01', 'DLL01', 'Raggedy Ann', 4.99, '18 inch Raggedy Ann doll'),
('RYL01', 'FNG01', 'King doll', 9.49, '12 inch king doll with royal garments and crown'),
('RYL02', 'FNG01', 'Queen doll', 9.49, '12 inch queen doll with royal garments and crown')
;
SELECT "`Products` Table Content:" FROM `Products` WHERE 1=0;
SELECT * FROM `Products`;
DROP TABLE IF EXISTS `OrderItems`;
CREATE TABLE `OrderItems`
( `order_num` INT(11) NOT NULL
, `order_item` INT(11) NOT NULL
, `prod_id` CHAR(10) NOT NULL
, `quantity` INT(11) NOT NULL
, `item_price` DECIMAL(8,2) NOT NULL
, PRIMARY KEY (`order_num`, `order_item`)
, FOREIGN KEY (`order_num`) REFERENCES `Orders` (`order_num`)
, FOREIGN KEY (`prod_id`) REFERENCES `Products` (`prod_id`)
);
INSERT INTO `OrderItems` VALUES
(20005, 1, 'BR01', 100, 5.49),
(20005, 2, 'BR03', 100, 10.99),
(20006, 1, 'BR01', 20, 5.99),
(20006, 2, 'BR02', 10, 8.99),
(20006, 3, 'BR03', 10, 11.99),
(20007, 1, 'BR03', 50, 11.49),
(20007, 2, 'BNBG01', 100, 2.99),
(20007, 3, 'BNBG02', 100, 2.99),
(20007, 4, 'BNBG03', 100, 2.99),
(20007, 5, 'RGAN01', 50, 4.49),
(20008, 1, 'RGAN01', 5, 4.99),
(20008, 2, 'BR03', 5, 11.99),
(20008, 3, 'BNBG01', 10, 3.49),
(20008, 4, 'BNBG02', 10, 3.49),
(20008, 5, 'BNBG03', 10, 3.49),
(20009, 1, 'BNBG01', 250, 2.49),
(20009, 2, 'BNBG02', 250, 2.49),
(20009, 3, 'BNBG03', 250, 2.49)
;
SELECT "`OrderItems` Table Content:" FROM `OrderItems` WHERE 1=0;
SELECT * FROM `OrderItems`;
-- 1 Задание 1 8
SELECT vend_name, UPPER(vend_name) AS vend_name_upcase
FROM Vendors
ORDER BY vend_name;
SELECT vend_name, SOUNDEX(vend_name) AS vend_name_sound
FROM Vendors
ORDER BY vend_name;
-- 2 Задание 1 8
SELECT order_num, EXTRACT(YEAR FROM order_date) AS year_value
FROM Orders
WHERE EXTRACT(YEAR FROM order_date) = 2004;
SELECT order_num, EXTRACT(MINUTE FROM order_date) AS minute_value
FROM Orders
WHERE EXTRACT(MINUTE FROM order_date) = 00;
-- 3 Задание 1 8
SELECT AVG(prod_price) AS avg_price
FROM Products;
SELECT AVG(prod_price) AS avg_price
FROM Products
WHERE prod_id = 'RYL01' OR prod_id = 'RYL02';
-- 4 Задание 1 8
SELECT COUNT(cust_id) AS cust_count
FROM Customers;
SELECT COUNT(cust_id) AS cust_count
FROM Customers
WHERE cust_id RLIKE '[%L%]';
-- 5 Задание 1 8
SELECT MAX(prod_price) AS max_price
FROM Products;
SELECT MAX(prod_price) AS max_price
FROM Products
WHERE prod_id RLIKE 'BNBG0[1-3]';