presto - интервал получения дней (не дата) - PullRequest
0 голосов
/ 25 сентября 2018

Как получить интервал дней для prestodb?Я могу конвертировать в миллисекунды и конвертировать их в количество дней, но я ищу, есть ли более короткий способ сделать это.

Пример: я хочу посмотреть, сколько дней прошло с тех пор, как первая строка была вставлена ​​втаблица.

SELECT 
    to_milliseconds(date(current_date) - min(created)) / (1000*60*60*24) as days_since_first_row
FROM
    some_table

То, что я надеюсь увидеть: (Либо 1 из ниже)

 SELECT 
        to_days(date(current_date) - min(created)) / (1000*60*60*24) as days_since_first_row
        ,cast(date(current_date) - min(created)) as days) as days_since_first_row2
    FROM
        some_table

1 Ответ

0 голосов
/ 25 сентября 2018

Используйте вычитание, чтобы получить интервал, а затем используйте day на интервале, чтобы получить количество прошедших дней.

presto:default> select day(current_date - date '2018-07-01');
 _col0
-------
    86
...