DELETE FROM pg_statistic_ext;
DELETE FROM gs_model_warehouse;
CREATE TABLE db4ai_bayesnet (id INT, attr1 VARCHAR(256), attr2 VARCHAR(256), attr3 INT, attr4 INT, attr5 double precision, attr6 double precision);
COPY db4ai_bayesnet FROM '@abs_srcdir@/data/bayesnet_test_data.csv' DELIMITER ',';
SET enable_ai_stats=1;
SET multi_stats_type='BAYESNET';
set default_statistics_target=-80;
ANALYZE db4ai_bayesnet((id,attr1,attr2));
ANALYZE db4ai_bayesnet((id,attr3,attr4));
ANALYZE db4ai_bayesnet((id,attr5,attr6));
ANALYZE db4ai_bayesnet((attr1,attr2));
ANALYZE db4ai_bayesnet((attr1,attr3));
ANALYZE db4ai_bayesnet((attr1,attr5));
ANALYZE db4ai_bayesnet((attr2,attr3));
ANALYZE db4ai_bayesnet((attr2,attr5));
ANALYZE db4ai_bayesnet((attr3,attr4));
ANALYZE db4ai_bayesnet((attr3,attr5));
ANALYZE db4ai_bayesnet((attr4,attr5));
ANALYZE db4ai_bayesnet((attr5,attr6));
ANALYZE db4ai_bayesnet((attr1,attr2,attr3));
ANALYZE db4ai_bayesnet((attr1,attr2,attr5));
ANALYZE db4ai_bayesnet((attr1,attr3,attr4));
ANALYZE db4ai_bayesnet((attr1,attr3,attr5));
ANALYZE db4ai_bayesnet((attr1,attr4,attr5));
ANALYZE db4ai_bayesnet((attr1,attr5,attr6));
ANALYZE db4ai_bayesnet((attr2,attr3,attr4));
ANALYZE db4ai_bayesnet((attr2,attr3,attr5));
ANALYZE db4ai_bayesnet((attr2,attr4,attr5));
ANALYZE db4ai_bayesnet((attr2,attr5,attr6));
ANALYZE db4ai_bayesnet((attr3,attr4,attr5));
ANALYZE db4ai_bayesnet((attr3,attr5,attr6));
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE id='1' AND attr1='a582' AND attr2='b682';
QUERY PLAN
--------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((id = 1) AND ((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr2='b682';
QUERY PLAN
-------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr3=833;
QUERY PLAN
------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND (attr3 = 833))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr5=0.959;
QUERY PLAN
---------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr3=833;
QUERY PLAN
------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr3 = 833))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr5=0.959;
QUERY PLAN
---------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr3=833 AND attr4=421;
--?.*
--?.*
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr3 = 833) AND (attr4 = 421))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr3=833 AND attr5=0.959;
QUERY PLAN
------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr3 = 833) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr4=421 AND attr5=0.959;
QUERY PLAN
------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr4 = 421) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr5=0.959 AND attr6=0.76;
QUERY PLAN
----------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr5 = .959::double precision) AND (attr6 = .76::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr2='b682' AND attr3=833;
QUERY PLAN
-------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text) AND (attr3 = 833))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr2='b682' AND attr5=0.959;
QUERY PLAN
--------------------------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr3=833 AND attr4=421;
QUERY PLAN
--------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND (attr3 = 833) AND (attr4 = 421))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr3=833 AND attr5=0.959;
QUERY PLAN
---------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND (attr3 = 833) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr5=0.959 AND attr6=0.76;
QUERY PLAN
---------------------------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr1)::text = 'a582'::text) AND (attr5 = .959::double precision) AND (attr6 = .76::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr3=833 AND attr4=421;
QUERY PLAN
--------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr3 = 833) AND (attr4 = 421))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr3=833 AND attr5=0.959;
QUERY PLAN
---------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr3 = 833) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr4=421 AND attr5=0.959;
QUERY PLAN
---------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr4 = 421) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr5=0.959 AND attr6=0.76;
QUERY PLAN
---------------------------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: (((attr2)::text = 'b682'::text) AND (attr5 = .959::double precision) AND (attr6 = .76::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr3=833 AND attr4=421 AND attr5=0.959;
QUERY PLAN
----------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr3 = 833) AND (attr4 = 421) AND (attr5 = .959::double precision))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr3=833 AND attr5=0.959 AND attr6=0.76;
QUERY PLAN
----------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=1060)
Filter: ((attr3 = 833) AND (attr5 = .959::double precision) AND (attr6 = .76::double precision))
(2 rows)
SELECT COUNT(1) from pg_statistic_ext;
count
-------
24
(1 row)
SELECT COUNT(1) from gs_model_warehouse;
count
-------
24
(1 row)
DELETE FROM pg_statistic_ext;
DELETE FROM gs_model_warehouse;
ALTER TABLE db4ai_bayesnet add statistics((attr1, attr2));
ALTER TABLE db4ai_bayesnet add statistics((attr2, attr3));
ALTER TABLE db4ai_bayesnet add statistics((attr1, attr2, attr3));
ANALYZE db4ai_bayesnet;
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr2='b682';
QUERY PLAN
-------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=38)
Filter: (((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr2='b682' AND attr3=833;
QUERY PLAN
----------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=38)
Filter: (((attr2)::text = 'b682'::text) AND (attr3 = 833))
(2 rows)
EXPLAIN SELECT * FROM db4ai_bayesnet WHERE attr1='a582' AND attr2='b682' AND attr3=833;
QUERY PLAN
-------------------------------------------------------------------------------------------------
--? Seq Scan on db4ai_bayesnet (cost=0.00...* rows=1 width=38)
Filter: (((attr1)::text = 'a582'::text) AND ((attr2)::text = 'b682'::text) AND (attr3 = 833))
(2 rows)
SELECT COUNT(1) from pg_statistic_ext;
count
-------
3
(1 row)
SELECT COUNT(1) from gs_model_warehouse;
count
-------
3
(1 row)
DROP TABLE db4ai_bayesnet;
DELETE FROM pg_statistic_ext;
DELETE FROM gs_model_warehouse;
SET enable_ai_stats=0;