pdbench/census/Queries/q4.sql

44 lines
959 B
SQL

-- Query 4: 3 sel-const
CREATE TABLE r4 WITHOUT OIDS AS
SELECT * FROM rt
WHERE (FERTIL = 1 OR FERTIL = -1) AND
(RSPOUSE = 1 OR RSPOUSE = 2 OR RSPOUSE = -1);
CREATE TABLE f4 WITHOUT OIDS AS
SELECT ft.* FROM ft, r4
WHERE ft.tid = r4.tid;
CREATE TABLE c4 WITHOUT OIDS AS
SELECT ct.* FROM ct, f4
WHERE ct.hid = f4.hid and
(CASE WHEN f4.Col = 'FERTIL'
THEN ct.VALUE = 1
ELSE (CASE WHEN f4.Col = 'RSPOUSE'
THEN ct.VALUE = 1 OR ct.VALUE = 2
ELSE true
END)
END);
--CREATE TABLE DEL4 WITHOUT OIDS AS
--SELECT TID FROM f4
--WHERE HID NOT IN (SELECT HID FROM c4);
CREATE TABLE DEL4 WITHOUT OIDS AS
SELECT f4.TID FROM f4 left join c4 on (f4.hid = c4.hid)
WHERE c4.hid is null;
DELETE FROM r4
WHERE TID IN (SELECT TID FROM DEL4);
DELETE FROM f4
WHERE TID IN (SELECT TID FROM DEL4);
DELETE FROM c4
WHERE HID NOT IN (SELECT HID FROM f4);