Files
openGauss-server/src/test/regress/sql/vec_delete_part1.sql
2020-06-30 17:38:27 +08:00

114 lines
5.5 KiB
SQL

/*
* This file is used to test the function of ExecVecUnique()
*/
----
--- Create Table and Insert Data
----
create schema vector_delete_engine_part1;
set current_schema = vector_delete_engine_part1;
create table vector_delete_engine_part1.ROW_DELETE_TABLE_01
(
col_int0 int4
,col_int int
,col_bint bigint
,col_serial int
,col_char char(25)
,col_vchar varchar(35)
,col_text text
,col_num numeric(10,4)
,col_decimal decimal
,col_float float
,col_date date
,col_time time
,col_timetz timetz
,col_interval interval
) ;
create table vector_delete_engine_part1.VECTOR_DELETE_TABLE_01
(
col_int0 int4
,col_int int
,col_bint bigint
,col_serial int
,col_char char(25)
,col_vchar varchar(35)
,col_text text
,col_num numeric(10,4)
,col_decimal decimal
,col_float float
,col_date date
,col_time time
,col_timetz timetz
,col_interval interval
)with(orientation=column) ;
insert into ROW_DELETE_TABLE_01 values(1, 10, 100, 2147483647, 'aa', 'aaaaaa', 'lkjhggdh', 0.01, 10.01, 1100.01, '2015-02-14', '16:00:38', '1996-2-6 01:00:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(11, 20, 100, -2147483647, 'aa', 'gggggg', 'ljghjagh', 0.01, 10.01, 1100.01, '2015-03-14', '16:02:38', '1996-2-8 01:00:30+8', '2 day 13:56:56');
insert into ROW_DELETE_TABLE_01 values(1, 30, 100, -2146483647, 'bb', 'aaaaaa', 'jgdajhgdj', 0.01, 10.01, 100.01, '2015-04-15', '16:02:38', '1996-2-6 01:00:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(11, 40, 100, 2147483647, 'bb', 'aaaaaa', 'ahgdjheien', 0.04, 10.01, 100.01, '2015-05-16', '16:00:38', '1996-2-8 01:00:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(1, 50, 200, 2119483647, 'cc', 'aaaaaa', 'dgadgdgh', 0.01, 10.11, 100.01, '2015-02-18', '16:00:38', '1996-2-6 01:00:30+8', '2 day 13:56:56');
insert into ROW_DELETE_TABLE_01 values(11, 10, 100, 2105788455, 'dd', 'hhhhhh', 'dkjjgkdjao', 0.01, 10.01, 100.01, '2015-08-09', '16:00:38', '1996-2-8 01:00:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(1, 20, 100, 1158745898, 'dd', 'aaaaaa', 'dakjgdkjae', 0.01, 10.01, 100.01, '2015-10-06', '16:05:38', '1996-2-6 01:00:30+8', '8 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(11, 30, 100, 1198754521, 'ee', 'ffffff', 'ajgeaaghgd', 0.08, 10.01, 1100.01, '2015-12-02', '16:05:38', '1996-2-6 01:30:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(1, 40, 200, -1246521526, 'ee', 'aaaaaa', 'ajkgeajkjkdj', 0.08, 10.01, 1100.01, '2015-06-16', '16:00:38', '1996-2-8 01:00:30+8', '10 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(11, 50, 100, 2024856154, 'gg', 'ffffff', 'akjgiejj', 0.01, 10.11, 100.01, '2015-05-20', '16:00:38', '1996-2-6 01:00:30+8', '2 day 13:24:56');
insert into vector_delete_table_01 select * from row_delete_table_01;
analyze vector_delete_table_01;
----
--- case 1: Bascic Test
----
select * from vector_delete_table_01 order by 1, 2, 3;
select * from vector_delete_table_01 where col_num = 0.01 order by 1,2,3,4,5;
explain (verbose on, costs off) delete from vector_delete_table_01 where col_num = 0.01;
delete from vector_delete_table_01 where col_num = 0.01;
select count(*) from vector_delete_table_01;
delete from vector_delete_table_01 where col_timetz = '1996-2-6 01:00:30+8';
select * from vector_delete_table_01 where col_timetz = '1996-2-6 01:00:30+8' order by 1,2,3,4,5;
delete from vector_delete_table_01 where col_vchar = 'ffffff' and col_time = '16:05:38';
select * from vector_delete_table_01 where col_vchar = 'ffffff' and col_time = '16:05:38' order by 1,2,3,4,5;
----
--- case 2: With Null
----
delete from vector_delete_table_01;
insert into ROW_DELETE_TABLE_01 values(1, NULL, 200, -1246521526, NULL, 'aaaaaa', 'ajkgeajkjkdj', 0.08, 10.01, 1100.01, '2015-06-16', '16:00:38', '1996-2-8 01:00:30+8', NULL);
insert into ROW_DELETE_TABLE_01 values(11, 50, -1246521526,100, 'gg', 'ffffff', 'akjgiejj',NULL, 10.11, 100.01, '2015-05-20', '16:00:38', NULL, '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(1, 20, 100, 1158745898, 'dd', 'aaaaaa', NULL, 0.01, 10.01, 100.01, NULL, '16:05:38', '1996-2-6 01:00:30+8', '8 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(NULL, 30, 100, 1198754521, 'ee', 'ffffff', 'ajgeaaghgd', 0.08, NULL, 1100.01, '2015-12-02', '16:05:38', '1996-2-6 01:00:30+8', '2 day 13:24:56');
insert into ROW_DELETE_TABLE_01 values(NULL,NULL,NULL,1198754521,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
insert into vector_delete_table_01 select * from row_delete_table_01;
analyze vector_delete_table_01;
delete from vector_delete_table_01 where col_int0=1 and col_date='2015-04-15';
select count(*) from vector_delete_table_01 where col_int0=1 and col_date='2015-04-15';
delete from vector_delete_table_01 where col_date is NULL ;
delete from vector_delete_table_01 where col_decimal is not NULL;
delete from vector_delete_table_01;
select count(*) from vector_delete_table_01;
----
--- case 3: With Big Amount
----
CREATE OR REPLACE PROCEDURE func_insert_tbl_delete_01()
AS
BEGIN
FOR I IN 0..50 LOOP
insert into ROW_DELETE_TABLE_01 values(11, 50, 100, 2024856154, 'gg', 'ffffff', 'testdelete'||i, 0.01, 10.11, 100.01, '2015-05-20', '16:00:38', '1996-2-6 01:00:30+8', '2 day 13:24:56');
END LOOP;
END;
/
CALL func_insert_tbl_delete_01();
insert into vector_delete_table_01 select * from row_delete_table_01;
delete from vector_delete_table_01 where col_char = 'gg' and col_vchar = 'ffffff';
select count(*) from vector_delete_table_01;
----
--- Clean Table and Resource
----
drop schema vector_delete_engine_part1 cascade;