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

Коллеги, добрый день! Столкнулся со следующей проблемой: когда считаю uniq(cookie) за

неделю (select week, uniq(cookie) from x group by week) - получаю 100 уников.
когда делаю группировку по дням (select day, uniq(cookie) from x group by day) - ожидаемо получаю больше, т.к. уникальные юзеры начинают считаться в рамках своего дня, а не всей недели.

подскажите, есть ли какая-нибудь функция, которая посчитает каждую уникальную cookie один раз в том дне, когда она появаилась первый раз?

9 ответов

4 просмотра

лучше хранить дату первого появления/инстала

Храните по дням состояние юника. uniqState(cookie). Тогда при агрегации по таблице с этими состояниями по неделям или любым другим периодам получите правильные данные. Почитайте про AggregatingMergeTree и используйте на всякий случай FINAL в запросах

Дмитрий Володин
Храните по дням состояние юника. uniqState(cookie)...

НЕ НАДО FINAL использовать с AggregatingMergeTree НИКОГДА надо просто использовать до аггрегацию с groupby

Denny [Altinity]
НЕ НАДО FINAL использовать с AggregatingMergeTree ...

Хм, спасибо, посмотрю. У меня без final но с груп баем вылезали не самые ожидаемые результаты. С final окей

Дмитрий Володин
Храните по дням состояние юника. uniqState(cookie)...

Как это поможет узнать дату первого появления?

Дмитрий Володин
Немного не дочитал, вы правы

Или через подзапрос находить min(date) для каждого cookie, и это не будет работать на реальных данных, или сразу писать это поле

select d, uniq(cookie) from (select cookie, min(day) d from table group by cookie) group by d 🤷‍♂️

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

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

А чем вам питонисты не угодили?😂
.
79
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
11
Кстати, я тут еще с одной темой столкнулся, вот учу я C++, на таком то ресурсе, а остальные постоянно советуют практиковаться, что то писать, проекты, но как писать если вот т...
aaswq1
7
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Ребят, кто сталкивался с тем, что Electron.js не разворачивает билд React.js-приложения? Голый body в чёрном цвете, как и должно быть, но остального - нет. Билд работает исп...
..
6
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Anyone knows how to build this widget in Flutter? I have all the assets for round stations and the road, but how can I make the my widget animate between these stations? And h...
Mohammad Zamani
9
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Карта сайта