61c23f00创建于 2025年3月7日历史提交
set enable_default_ustore_table = on;
create schema test_ustore_intersect_2;
set current_schema='test_ustore_intersect_2';
-- test left outer join with all supported data types
drop table if exists t1;
NOTICE:  table "t1" does not exist, skipping
drop table if exists t2;
NOTICE:  table "t2" does not exist, skipping
drop type if exists composite_type;
NOTICE:  type "composite_type" does not exist, skipping
create type composite_type as (int_type integer, char_type text, date_type date);
---------------------------------------------------------------------------------
-----------------             SUPPORTED TYPES SO FAR          -------------------
---------------------------------------------------------------------------------
create unlogged table t1
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (storage_type=USTORE);
create unlogged table t2
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (storage_type=USTORE);
create unlogged table t3
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (storage_type=USTORE);
-- create unlogged tables for post data insertion verification
drop table if exists t1_verification;
NOTICE:  table "t1_verification" does not exist, skipping
drop table if exists t2_verification;
NOTICE:  table "t2_verification" does not exist, skipping
drop table if exists t3_verification;
NOTICE:  table "t3_verification" does not exist, skipping
create unlogged table t1_verification
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (orientation=row);
create unlogged table t2_verification
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (orientation=row);
create unlogged table t3_verification
(
        c1 tinyint,
        c2 smallint,
        c3 integer,
        c4 bigint,
        c5 money,
        c6 boolean,
        c7 char(10),
        c8 character(10),
        c9 nchar(10),
        c10 varchar(10),
        c11 text,
        c12 clob,
        c14 bytea,
        c15 date,
        c16 time without time zone,
        c17 reltime
)
with (orientation=row);
----------------------------------------------------------------------------------
--------------------           ALL DATA TYPES              -----------------------
---------------------------------------------------------------------------------
--create unlogged table t1
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (storage_type=USTORE);
--
--create unlogged table t2
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (storage_type=USTORE);
--
--create unlogged table t3
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (storage_type=USTORE);
--
---- create unlogged table for post data insertion verification
--drop table if exists t1_verification;
--drop table if exists t2_verification;
--drop table if exists t3_verification;
--
--create unlogged table t1_verification
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (orientation=row);
--
--create unlogged table t2_verification
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (orientation=row);
--
--create unlogged table t3_verification
--(
--        c1 tinyint,
--        c2 smallint,
--        c3 integer,
--        c4 bigint,
--        c5 money,
--        c6 boolean,
--        c7 char(10),
--        c8 character(10),
--        c9 nchar(10),
--        c10 varchar(10),
--        c11 text,
--        c12 clob,
--        c13 blob,
--        c14 bytea,
--        c15 date,
--        c16 time without time zone,
--        c17 reltime,
--        c18 composite_type
--)
--with (orientation=row);
-- case 1: empty tables
create view intersect_view_case1_1 as (select * from t1 intersect select * from t2);
create view intersect_view_case1_2 as (select * from t1 intersect select * from t2 intersect select * from t3);
create view intersect_view_case1_3 as (select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2);
create view intersect_view_case1_4 as (select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2 intersect all select * from t3 where t3.c1=3);
select * from intersect_view_case1_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case1_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case1_3;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case1_4;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_all_view_case1_1 as (select * from t1 intersect all select * from t2);
create view intersect_all_view_case1_2 as (select * from t1 intersect all select * from t2 intersect all select * from t3);
create view intersect_all_view_case1_3 as (select * from t1 where t1.c1=1 intersect all select * from t2 where t2.c1=2);
create view intersect_all_view_case1_4 as (select * from t1 where t1.c1=1 intersect all select * from t2 where t2.c1=2 intersect all select * from t3 where t3.c1=3);
select * from intersect_all_view_case1_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_all_view_case1_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_all_view_case1_3;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_all_view_case1_4;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

-- case 2: one empty table
\COPY t1 FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data1.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t1, line 2415, column c15: "'10002-05-09'"
\COPY t1_verification FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data1.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t1_verification, line 2415, column c15: "'10002-05-09'"
-- t1 data verification
create view intersect_t1_verification_view as (select * from t1 except select * from t1_verification);
select * from intersect_t1_verification_view;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_view_case2_1 as ((select * from t1 intersect select * from t2)
except
(select * from t1_verification intersect select * from t2_verification));
create view intersect_view_case2_2 as ((select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2)
except
(select * from t1_verification where t1_verification.c1=1 intersect select * from t2_verification where t2_verification.c1=2));
select * from intersect_view_case2_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case2_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_all_view_case2_1 as ((select * from t1 intersect all select * from t2)
except
(select * from t1_verification intersect all select * from t2_verification));
create view intersect_all_view_case2_2 as ((select * from t1 where t1.c1=1 intersect all select * from t2 where t2.c1=2)
except
(select * from t1_verification where t1_verification.c1=1 intersect all select * from t2_verification where t2_verification.c1=2));
select * from intersect_all_view_case2_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_all_view_case2_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

-- case 3: no empty table
\COPY t2 FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data2.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t2, line 2415, column c15: "'10002-05-09'"
\COPY t2_verification FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data2.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t2_verification, line 2415, column c15: "'10002-05-09'"
-- t2 data verification
create view intersect_t2_verification_view as (select * from t2 except select * from t2_verification);
select * from intersect_t2_verification_view;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_view_case3_1 as ((select * from t1 intersect select * from t2)
except
(select * from t1_verification intersect select * from t2_verification));
create view intersect_view_case3_2 as ((select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2)
except
(select * from t1_verification where t1_verification.c1=1 intersect select * from t2_verification where t2_verification.c1=2));
create view intersect_view_case3_3 as ((select * from t1 intersect all select * from t2)
except
(select * from t1_verification intersect all select * from t2_verification));
create view intersect_view_case3_4 as ((select * from t1 where t1.c1=1 intersect all select * from t2 where t2.c1=2)
except
(select * from t1_verification where t1_verification.c1=1 intersect all select * from t2_verification where t2_verification.c1=2));
select * from intersect_view_case3_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_3;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_4;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

-- insert 10k rows for t3
\COPY t3 FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data3.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t3, line 2415, column c15: "'10002-05-09'"
\COPY t3_verification FROM '@abs_srcdir@/tmp_check/datanode1/pg_copydir/test_ustore_data3.data' delimiter '|';
ERROR:  invalid data for "year =  10002", value must be between -4712 and 9999, and not be 0
CONTEXT:  COPY t3_verification, line 2415, column c15: "'10002-05-09'"
-- t3 data verification
create view intersect_t3_verification_view as (select * from t3 except select * from t3_verification);
select * from intersect_t3_verification_view;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_view_case3_5 as ((select * from t1 intersect select * from t2 intersect select * from t3)
except
(select * from t1_verification intersect select * from t2_verification intersect select * from t3_verification));
create view intersect_view_case3_6 as ((select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2 intersect all select * from t3 where t3.c1=3)
except
(select * from t1_verification where t1_verification.c1=1 intersect select * from t2_verification where t2_verification.c1=2 intersect all select * from t3_verification where t3_verification.c1=3));
create view intersect_view_case3_7 as ((select * from t1 intersect all select * from t2 intersect all select * from t3)
except
(select * from t1_verification intersect all select * from t2_verification intersect all select * from t3_verification));
create view intersect_view_case3_8 as ((select * from t1 where t1.c1=1 intersect all select * from t2 where t2.c1=2 intersect all select * from t3 where t3.c1=3)
except(select * from t1_verification where t1_verification.c1=1 intersect all select * from t2_verification where t2_verification.c1=2 intersect all select * from t3_verification where t3_verification.c1=3));
select * from intersect_view_case3_5;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_6;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_7;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case3_8;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

create view intersect_view_case3_9 as (select * from t1 where t1.c1=1 intersect select * from t2 where t2.c1=2);
create view intersect_view_case3_10 as (select * from t1_verification where t1_verification.c1=1 intersect select * from t2_verification where t2_verification.c1=2);
create view intersect_view_case3_11 as (select * from intersect_view_case3_9 where c1=100 except select * from intersect_view_case3_10 where c1=100);
select * from intersect_view_case3_11;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

-- case 4: intersect in subquery
create view intersect_view_case4_1 as ((select * from
(select * from t1 intersect select * from t2))
except
(select * from
(select * from t1_verification intersect select * from t2_verification)));
create view intersect_view_case4_2 as ((select * from
(select * from t1 intersect select * from t2 intersect select * from t3))
except
(select * from
(select * from t1_verification intersect select * from t2_verification intersect select * from t3)));
create view intersect_view_case4_3 as ((select * from
(select * from t1 intersect select * from t2) as foo)
except
(select * from
(select * from t1_verification intersect select * from t2_verification) as foo));
create view intersect_view_case4_4 as ((select * from
(select * from t1 where t1.c1=1 intersect select * from t2) as foo)
except
(select * from
(select * from t1_verification where t1_verification.c1=1 intersect select * from t2_verification) as foo));
create view intersect_view_case4_5 as ((select * from
(select * from t1 intersect all select * from t2))
except
(select * from
(select * from t1_verification intersect all select * from t2_verification)));
create view intersect_view_case4_6 as ((select * from
(select * from t1 intersect all select * from t2 intersect all select * from t3))
except
(select * from
(select * from t1_verification intersect all select * from t2_verification intersect all select * from t3)));
create view intersect_view_case4_7 as ((select * from
(select * from t1 intersect all select * from t2) as foo)
except
(select * from
(select * from t1_verification intersect all select * from t2_verification) as foo));
create view intersect_view_case4_8 as ((select * from
(select * from t1 where t1.c1=1 intersect all select * from t2) as foo)
except
(select * from
(select * from t1_verification where t1_verification.c1=1 intersect all select * from t2_verification) as foo));
--create view intersect_view_case4_9 as ((select * from
--(select t1.c18 from t1 intersect select t2.c18 from t2) as foo)
--except
--(select * from
--(select t1_verification.c18 from t1_verification intersect select t2_verification.c18 from t2_verification) as foo));
--create view intersect_view_case4_10 as ((select * from
--(select t1.c18 from t1 intersect all select t2.c18 from t2) as foo)
--except
--(select * from
--(select t1_verification.c18 from t1_verification intersect all select t2_verification.c18 from t2_verification) as foo));
select * from intersect_view_case4_1;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_2;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_3;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_4;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_5;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_6;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_7;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

select * from intersect_view_case4_8;
 c1 | c2 | c3 | c4 | c5 | c6 | c7 | c8 | c9 | c10 | c11 | c12 | c14 | c15 | c16 | c17 
----+----+----+----+----+----+----+----+----+-----+-----+-----+-----+-----+-----+-----
(0 rows)

--select * from intersect_view_case4_9;
--select * from intersect_view_case4_10;
-- drop all tables and views
drop view intersect_view_case1_1 CASCADE;
drop view intersect_view_case1_2 CASCADE;
drop view intersect_view_case1_3 CASCADE;
drop view intersect_view_case1_4 CASCADE;
drop view intersect_all_view_case1_1 CASCADE;
drop view intersect_all_view_case1_2 CASCADE;
drop view intersect_all_view_case1_3 CASCADE;
drop view intersect_all_view_case1_4 CASCADE;
drop view intersect_t1_verification_view CASCADE;
drop view intersect_view_case2_1 CASCADE;
drop view intersect_view_case2_2 CASCADE;
drop view intersect_all_view_case2_1 CASCADE;
drop view intersect_all_view_case2_2 CASCADE;
drop view intersect_t2_verification_view CASCADE;
drop view intersect_view_case3_1 CASCADE;
drop view intersect_view_case3_2 CASCADE;
drop view intersect_view_case3_3 CASCADE;
drop view intersect_view_case3_4 CASCADE;
drop view intersect_t3_verification_view CASCADE;
drop view intersect_view_case3_5 CASCADE;
drop view intersect_view_case3_6 CASCADE;
drop view intersect_view_case3_7 CASCADE;
drop view intersect_view_case3_8 CASCADE;
drop view intersect_view_case3_9 CASCADE;
NOTICE:  drop cascades to view intersect_view_case3_11
drop view intersect_view_case3_10 CASCADE;
drop view intersect_view_case3_11 CASCADE;
ERROR:  view "intersect_view_case3_11" does not exist
drop view intersect_view_case4_1 CASCADE;
drop view intersect_view_case4_2 CASCADE;
drop view intersect_view_case4_3 CASCADE;
drop view intersect_view_case4_4 CASCADE;
drop view intersect_view_case4_5 CASCADE;
drop view intersect_view_case4_6 CASCADE;
drop view intersect_view_case4_7 CASCADE;
drop view intersect_view_case4_8 CASCADE;
--drop view intersect_view_case4_9 CASCADE;
--drop view intersect_view_case4_10 CASCADE;
drop table t1 CASCADE;
drop table t2 CASCADE;
drop table t3 CASCADE;
drop table t1_verification CASCADE;
drop table t2_verification CASCADE;
drop table t3_verification CASCADE;