ClickHouse/tests/queries/0_stateless/01748_partition_id_pruning.sql
Amos Bird 82f31e1abb
Fix tests when projection is enabled
Avoid using count() in quota related tests

count() can subject to many optimization techniques, which is unstable
for testing quota usage.
2022-02-06 16:46:10 +08:00

34 lines
1.0 KiB
SQL

drop table if exists x;
create table x (i int, j int) engine MergeTree partition by i order by j settings index_granularity = 1;
insert into x values (1, 1), (1, 2), (1, 3), (2, 4), (2, 5), (2, 6);
set max_rows_to_read = 3;
select * from x where _partition_id = partitionId(1);
set max_rows_to_read = 5; -- one row for subquery + subquery
select * from x where _partition_id in (select partitionId(number + 1) from numbers(1));
-- trivial count optimization test
set max_rows_to_read = 2; -- one row for subquery + subquery itself
-- TODO: Relax the limits because we might build prepared set twice with _minmax_count_projection
set max_rows_to_read = 3;
select count() from x where _partition_id in (select partitionId(number + 1) from numbers(1));
drop table x;
drop table if exists mt;
create table mt (n UInt64) engine=MergeTree order by n partition by n % 10;
set max_rows_to_read = 200;
insert into mt select * from numbers(100);
select * from mt where toUInt64(substr(_part, 1, position(_part, '_') - 1)) = 1;
drop table mt;