Mega Code Archive

 
Categories / Oracle PLSQL / Select Query
 

Selecting Products That Belong to Category

SQL> SQL> SQL> SQL> CREATE TABLE Product (   2  ProductID INT NOT NULL PRIMARY KEY,   3  Name VARCHAR(50) NOT NULL,   4  Description VARCHAR(1000) NOT NULL,   5  Price NUMBER NULL,   6  ImagePath VARCHAR(50) NULL,   7  soldout NUMBER(1,0) NULL,   8  Promotion NUMBER(1,0) NULL); Table created. SQL> SQL> CREATE SEQUENCE ProductIDSeq; Sequence created. SQL> SQL> CREATE OR REPLACE TRIGGER ProductAutonumberTrigger   2  BEFORE INSERT ON Product   3  FOR EACH ROW   4  BEGIN   5     SELECT ProductIDSeq.NEXTVAL   6     INTO :NEW.ProductID FROM DUAL;   7  END;   8  / Trigger created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath,soldout, Promotion)   2  VALUES ('Pen', 'Ball Pen',5.99, 'pen.jpg', 1, 0); 1 row created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath, soldout, Promotion)   2  VALUES ('Ruler', 'Long',14.99, 'ruler.jpg', 0, 0); 1 row created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath, soldout, Promotion)   2  VALUES ('Desk', 'Computer Desk',5.99, 'desk.jpg', 0, 1); 1 row created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath, soldout, Promotion)   2  VALUES ('PC', 'Notebook',49.99, 'pc.jpg', 0, 1); 1 row created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath, soldout, Promotion)   2  VALUES ('Mouse', 'Wireless',9.99, 'mouse.jpg',  1, 0); 1 row created. SQL> SQL> INSERT INTO Product (Name, Description, Price, ImagePath, soldout, Promotion)   2  VALUES ('Keyboard', 'keyboard',3.75, 'keyboard.jpg', 0, 0); 1 row created. SQL> SQL> CREATE TABLE ProductCategory (   2  ProductID INT NOT NULL,   3  CategoryID INT NOT NULL,   4  PRIMARY KEY (ProductID, CategoryID)   5  ); Table created. SQL> SQL> SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (1,3); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (2,1); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (2,3); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (3,3); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (4,1); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (5,2); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (6,3); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (6,4); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (7,4); 1 row created. SQL> INSERT INTO ProductCategory (ProductID, CategoryID) VALUES (8,5); 1 row created. SQL> SQL> SELECT Name   2  FROM Product, ProductCategory   3  WHERE Product.ProductID = ProductCategory.ProductID   4  AND ProductCategory.CategoryID = 3; NAME -------------------------------------------------- Pen Ruler Desk Keyboard 4 rows selected. SQL> SQL> SQL> SELECT Name   2  FROM Product INNER JOIN ProductCategory   3  ON Product.ProductID = ProductCategory.ProductID   4  WHERE ProductCategory.CategoryID = 3; NAME -------------------------------------------------- Pen Ruler Desk Keyboard 4 rows selected. SQL> SQL> SQL> SQL> drop table product; Table dropped. SQL> drop sequence ProductIDSeq; Sequence dropped. SQL> drop table ProductCategory; Table dropped.