DRUID SQL LATEST () и EARLIEST () возвращают ноль

У меня есть этот источник данных в друиде:

введите здесь описание изображения

Я пытаюсь использовать LATEST(), чтобы вернуть последние координаты каждого пользователя, активного в последнюю минуту. Я намерен показать их местоположение в реальном времени, используя диаграмму mapbox в расширенном наборе. Это мой запрос:

SELECT LATEST(latitude), LATEST(longitude), user_id FROM locations
WHERE __time >= CURRENT_TIMESTAMP - INTERVAL '1' minute
GROUP BY user_id 

Проблема в том, что LATEST() всегда возвращает ноль. Кто-нибудь знает, что я делаю не так и как добиться желаемого с помощью DRUID SQL? введите здесь описание изображения


person Norbor Illig    schedule 10.06.2020    source источник


Ответы (1)


LATEST(expr) возвращает последнее значение expr, которое должно быть числовым.

Если ваши столбцы не числовые, используйте LATEST(expr, maxBytesPerString)

например:

SELECT LATEST(latitude,16), LATEST(longitude,16), user_id FROM locations
WHERE __time >= CURRENT_TIMESTAMP - INTERVAL '1' minute
GROUP BY user_id 
person Kundan Jha    schedule 10.07.2020
comment
Столбец не был числовым, поэтому LATEST (широта, 16) работает нормально, спасибо! - person Norbor Illig; 12.07.2020