184 похожих чатов

А в случае если массив будет многомерный(вложенность - 2), и

уникальность определяется одним из полей вложенных массивов, не знаете что делать?

4 ответов

8 просмотров

уникальность чего определяется ? Ключ для агрегации задается в Order by таблицы, мерж не смотрит внутрь AggregateFunction, он вычисляет AggregateFunction группируя по полям Order_by таблицы грубо говоря нельзя сделать select sum(V), K group by if(V=5) ,K

Petr- Автор вопроса
Denny [Altinity]
уникальность чего определяется ? Ключ для агрегаци...

В конечном итоге MaterializedView должен иметь такой вид: cityHash(id1, id2, id3, id4) | events —————————————————————————————— 111211212312321312123 | [[event, datetime], [event, datetime]] И нужна уникальность массивов в event по полю events, там должны быть только последние добавленные события.

Petr
В конечном итоге MaterializedView должен иметь так...

ни черта не понял. Я плохо по русски понимаю, давайте SQL

Petr- Автор вопроса
Denny [Altinity]
ни черта не понял. Я плохо по русски понимаю, дава...

Пожалуйста, есть таблица: CREATE TABLE entity_events ( datetime DateTime, event UInt8, entity1 String, entity2 String, entity3 String ) ENGINE = MergeTree() ORDER BY datetime; Есть представление: CREATE MATERIALIZED VIEW user_trace_pool ENGINE = AggregatingMergeTree() POPULATE AS SELECT cityHash64(entity1, entity2, entity3) as id, groupArrayState( [event, datetime] ) as events FROM ( SELECT any(datetime) as datetime, event, entity1, entity2, entity3 FROM entity_events GROUP BY (event, entity1, entity2, entity3) ) GROUP BY id; Задача стоит, что бы в массиве events представления всегда лежали только последние события сгруппированые по полю event из таблицы, и отсортированные по datetime. Но, при реалтайм insert, в поле events в представлении оказывается только последнее добавленное событие.

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта