blob: 73d702218f1a9d73daf26da8c77f8a144c751a38 [file] [log] [blame]
ij> -- MODULE DML022
-- SQL Test Suite, V6.0, Interactive SQL, dml022.sql
-- 59-byte ID
-- TEd Version #
-- AUTHORIZATION HU
set schema HU;
0 rows inserted/updated/deleted
ij> --0 SELECT USER FROM HU.ECCO;
VALUES USER;
1
--------------------------------------------------------------------------------------------------------------------------------
HU
ij> -- RERUN if USER value does not match preceding AUTHORIZATION comment
-- date_time print
-- TEST:0096 Subquery with MAX in < comparison predicate!
SELECT EMPNUM
FROM STAFF
WHERE GRADE <
(SELECT MAX(GRADE)
FROM STAFF);
EM&
---
E1
E2
E4
ij> -- PASS:0096 If 3 rows selected with EMPNUMs:'E1', 'E2', 'E4'?
-- END TEST >>> 0096 <<< END TEST
-- **********************************************************
-- TEST:0097 Subquery with AVG - 1 in <= comparison predicate!
SELECT *
FROM STAFF
WHERE GRADE <=
(SELECT AVG(GRADE)-1
FROM STAFF);
EM&|EMPNAME |GRADE|CITY
----------------------------------------------
E2 |Betty |10 |Vienna
ij> -- PASS:0097 If EMPNUM = 'E2' and EMPNAME = 'Betty'?
-- END TEST >>> 0097 <<< END TEST
-- *******************************************************************
-- TEST:0098 IN predicate with simple subquery!
SELECT EMPNAME
FROM STAFF
WHERE EMPNUM IN
(SELECT EMPNUM
FROM WORKS
WHERE PNUM = 'P2')
ORDER BY EMPNAME;
EMPNAME
--------------------
Alice
Betty
Carmen
Don
ij> -- PASS:0098 If 4 rows selected and first EMPNAME = 'Alice'?
-- END TEST >>> 0098 <<< END TEST
-- ***************************************************************
-- TEST:0099 Nested IN predicate - 2 levels!
SELECT EMPNAME
FROM STAFF
WHERE EMPNUM IN
(SELECT EMPNUM
FROM WORKS
WHERE PNUM IN
(SELECT PNUM
FROM PROJ
WHERE PTYPE = 'Design'));
EMPNAME
--------------------
Alice
Betty
Don
ij> -- PASS:0099 If 3 rows selected with EMPNAMEs:'Alice', 'Betty', 'Don'?
-- END TEST >>> 0099 <<< END TEST
-- *****************************************************************
-- TEST:0100 Nested IN predicate - 6 levels!
SELECT EMPNUM, EMPNAME
FROM STAFF
WHERE EMPNUM IN
(SELECT EMPNUM
FROM WORKS
WHERE PNUM IN
(SELECT PNUM
FROM PROJ
WHERE PTYPE IN
(SELECT PTYPE
FROM PROJ
WHERE PNUM IN
(SELECT PNUM
FROM WORKS
WHERE EMPNUM IN
(SELECT EMPNUM
FROM WORKS
WHERE PNUM IN
(SELECT PNUM
FROM PROJ
WHERE PTYPE = 'Design'))))))
ORDER BY EMPNUM;
EM&|EMPNAME
------------------------
E1 |Alice
E2 |Betty
E3 |Carmen
E4 |Don
ij> -- PASS:0100 If 4 rows selected and first EMPNUM = 'E1'?
-- PASS:0100 and first EMPNAME = 'Alice'?
-- END TEST >>> 0100 <<< END TEST
-- ****************************************************************
-- TEST:0101 Quantified predicate <= ALL with AVG in GROUP BY!
SELECT EMPNUM,PNUM
FROM WORKS
WHERE HOURS <= ALL
(SELECT AVG(HOURS)
FROM WORKS
GROUP BY PNUM);
EM&|PN&
-------
E1 |P5
E1 |P6
ij> -- PASS:0101 If 2 rows selected and each EMPNUM = 'E1'?
-- END TEST >>> 0101 <<< END TEST
-- *******************************************************************
-- TEST:0102 Nested NOT EXISTS with correlated subquery and DISTINCT!
SELECT DISTINCT EMPNUM
FROM WORKS WORKSX
WHERE NOT EXISTS
(SELECT *
FROM WORKS WORKSY
WHERE EMPNUM = 'E2'
AND NOT EXISTS
(SELECT *
FROM WORKS WORKSZ
WHERE WORKSZ.EMPNUM = WORKSX.EMPNUM
AND WORKSZ.PNUM = WORKSY.PNUM));
EM&
---
E1
E2
ij> -- PASS:0102 If 2 rows selected with EMPNUMs:'E1', 'E2'?
-- END TEST >>> 0102 <<< END TEST
-- *************************************************////END-OF-MODULE
;
ij>