Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Query Select
 

Multi-row subqueries

SQL> SQL> CREATE TABLE product (   2       product_name     VARCHAR2(25) PRIMARY KEY,   3       product_price    NUMBER(4,2),   4       quantity_on_hand NUMBER(5,0),   5       last_stock_date  DATE   6  ); Table created. SQL> SQL> CREATE TABLE product_order (   2       product_name  VARCHAR2(25),   3       salesperson   VARCHAR2(3),   4       order_date    DATE,   5       quantity      NUMBER(4,2)   6  ); Table created. SQL> SQL> INSERT INTO product_order VALUES ('Product 1', 'CA', '14-JUL-03', 1); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 2', 'BB', '14-JUL-03', 75); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 3', 'GA', '14-JUL-03', 2); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 4', 'GA', '15-JUL-03', 8); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 5', 'LB', '15-JUL-03', 20); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 6', 'CA', '16-JUL-03', 5); 1 row created. SQL> INSERT INTO product_order VALUES ('Product 7', 'CA', '17-JUL-03', 1); 1 row created. SQL> SQL> INSERT INTO product VALUES ('Product 1', 99,  1,    '15-JAN-03'); 1 row created. SQL> INSERT INTO product VALUES ('Product 2', 75,  1000, '15-JAN-02'); 1 row created. SQL> INSERT INTO product VALUES ('Product 3', 50,  100,  '15-JAN-03'); 1 row created. SQL> INSERT INTO product VALUES ('Product 4', 25,  10000, null); 1 row created. SQL> INSERT INTO product VALUES ('Product 5', 9.95,1234, '15-JAN-04'); 1 row created. SQL> INSERT INTO product VALUES ('Product 6', 45,  1,    TO_DATE('December 31, 2008, 11:30 P.M.','Month dd, YYYY, HH:MI P.M.')); 1 row created. SQL> SQL> SELECT * FROM product_order ORDER BY product_name; PRODUCT_NAME              SAL ORDER_DAT   QUANTITY ------------------------- --- --------- ---------- Product 1                 CA  14-JUL-03          1 Product 2                 BB  14-JUL-03         75 Product 3                 GA  14-JUL-03          2 Product 4                 GA  15-JUL-03          8 Product 5                 LB  15-JUL-03         20 Product 6                 CA  16-JUL-03          5 Product 7                 CA  17-JUL-03          1 7 rows selected. SQL> SQL> SELECT * FROM product   2  WHERE  product_name NOT IN (SELECT DISTINCT product_name FROM product_order)   3  ORDER BY product_name; no rows selected SQL> SQL> drop table product; Table dropped. SQL> drop table product_order; Table dropped. SQL>