join из подзапроса в materialized view вызывает ошибку table doesn't exist

73 views
Skip to first unread message

a...@imagespark.ru

unread,
May 24, 2017, 8:13:26 AM5/24/17
to ClickHouse
Создаю materialized view

create materialized view total_time_mins (learnerHash String, eventDate Date, minForDay AggregateFunction(min, DateTime)) Engine=AggregatingMergeTree(eventDate, (learnerHash, eventDate), 8192) populate as select learnerHash, eventDate, minState(eventTime) as minForDay from statements group by learnerHash, eventDate


Все ок, данные есть.

SELECT count()

FROM total_time_mins


┌─count()─┐

│  438016 │

└─────────┘


Выполняю запрос


SELECT

    learnerHash,

    eventDate,

    if(eventTime = minForDay, 0, runningDifference(eventTime)) AS diff

FROM statements

ANY LEFT JOIN

(

    SELECT

        minMerge(minForDay) AS minForDay,

        learnerHash,

        eventDate

    FROM total_time_mins

    GROUP BY

        learnerHash,

        eventDate

) USING (learnerHash, eventDate)

WHERE learnerHash = '354a14cd09a23d093ab7fa8887be37ed'

ORDER BY

    learnerHash ASC,

    eventTime ASC


Получаю ошибку DB::Exception: Table cursometr.total_time_mins doesn't exist..


Если отдельно выполнить подзапрос, то все ок считается. В чем проблема? :(

a...@imagespark.ru

unread,
May 24, 2017, 8:26:41 AM5/24/17
to ClickHouse
До меня только сейчас дошло, что у меня таблица statements является distributed, а представление я создал только на одном сервере

среда, 24 мая 2017 г., 15:13:26 UTC+3 пользователь a...@imagespark.ru написал:
Reply all
Reply to author
Forward
0 new messages