У меня есть таблица
CREATE TABLE table (
id Int32,
values Array(Tuple(LowCardinality(String), Int32)),
date Date
) ENGINE MergeTree()
PARTITION BY toYYYYMM(date)
ORDER BY (id, date)
, но при выполнении запроса
SELECT count(*)
FROM table
WHERE (arrayExists(x -> ((x.1) = toLowCardinality('pattern')), values) = 1)
я получаю ошибку
Code: 49. DB::Exception: Received from clickhouse:9000. DB::Exception: Cannot capture column 3 because it has incompatible type: got String, but LowCardinality(String) is expected..
Если я заменяю значения столбца 'Значения Array (Tuple (String, Int32)) затем запрос выполняется без ошибок.
В чем может быть проблема при использовании Array (Tuple (LowCardinality (String), Int32))?