mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 08:40:50 +00:00
d435532c68
+ range search done in steps of some number of rows. Controled by new setting `distinct_in_order_range_search_step`. By default 0, i.e. whole chunk + before start binary search, linear probing is done on each step (32 rows currently)
34 lines
2.1 KiB
XML
34 lines
2.1 KiB
XML
<test>
|
|
<!-- high cardinality -->
|
|
<drop_query>DROP TABLE IF EXISTS distinct_cardinality_high</drop_query>
|
|
<create_query>CREATE TABLE distinct_cardinality_high (high UInt64, medium UInt64, low UInt64) ENGINE MergeTree() ORDER BY (high, medium, low)</create_query>
|
|
<fill_query>INSERT INTO distinct_cardinality_high SELECT number % 10000, number % 1000, number % 100 from numbers(1000000)</fill_query>
|
|
|
|
<query>select distinct high from distinct_cardinality_high</query>
|
|
<query>select distinct high, low from distinct_cardinality_high</query>
|
|
<query>select distinct high, medium from distinct_cardinality_high</query>
|
|
<query>select distinct high, medium, low from distinct_cardinality_high</query>
|
|
|
|
<query>select distinct high, medium from distinct_cardinality_high order by medium</query>
|
|
<query>select distinct high, low from distinct_cardinality_high order by low</query>
|
|
<query>select distinct high, medium, low from distinct_cardinality_high order by high</query>
|
|
|
|
<drop_query>DROP TABLE IF EXISTS distinct_cardinality_high</drop_query>
|
|
|
|
<!-- low cardinality -->
|
|
<drop_query>DROP TABLE IF EXISTS distinct_cardinality_low</drop_query>
|
|
<create_query>CREATE TABLE distinct_cardinality_low (low UInt64, medium UInt64, high UInt64) ENGINE MergeTree() ORDER BY (low, medium, high)</create_query>
|
|
<fill_query>INSERT INTO distinct_cardinality_low SELECT number % 100, number % 1000, number % 10000 from numbers(1000000)</fill_query>
|
|
|
|
<query>select distinct low from distinct_cardinality_low</query>
|
|
<query>select distinct low, medium from distinct_cardinality_low</query>
|
|
<query>select distinct low, high from distinct_cardinality_low</query>
|
|
<query>select distinct low, medium, high from distinct_cardinality_low</query>
|
|
|
|
<query>select distinct low, medium from distinct_cardinality_low order by medium</query>
|
|
<query>select distinct low, high from distinct_cardinality_low order by high</query>
|
|
<query>select distinct low, medium, high from distinct_cardinality_low order by low</query>
|
|
|
|
<drop_query>DROP TABLE IF EXISTS distinct_cardinality_low</drop_query>
|
|
</test>
|