(судя подументации во вложенный select)? Иначе время выполнения сильно увеличивается.
Для примера:
SELECT
block_id,
toStartOfMinute(DateTime) AS Time
FROM test_table
WHERE Time = '2017-12-20 13:10:00'
GROUP BY
block_id,
Time
....
13 rows in set. Elapsed: 0.015 sec. Processed 235.35 thousand rows, 1.07 MB (15.30 million rows/s., 69.71 MB/s.)т.е. выполняется за 0.015 сек. Если после этого создать аналогичное view, но без условия:
CREATE VIEW test_view AS
SELECT
block_id,
toStartOfMinute(DateTime) AS Time
FROM test_table
GROUP BY
block_id,
Time
И сделать к нему запрос с условием
SELECT *
FROM test_view
WHERE Time = '2017-12-20 13:10:00'
...
13 rows in set. Elapsed: 1.471 sec. Processed 117.11 million rows, 702.65 MB (79.60 million rows/s., 477.61 MB/s.)Время увеличится на несколько порядков.
На последнем митапе обещали, что этот функционал появится в будущем. Сейчас его нет.
Обсуждают сегодня