Spark SQL: datediff не будет показывать результаты - PullRequest
0 голосов
/ 26 марта 2019

Невозможно заставить Dark SQL с датой работать, т. Е. Он работает, но не показывает результаты.

Я перепробовал все виды подходов, последнее вложение

select 
    guid,
    first, 
    last,
    datediff(last_string, first_string)
from (
    select 
        guid,
        first,
        last,
        cast(first as string) as first_string,
        cast(last as string) as last_string
    from (
        select 
            guid, 
            min(entry_date) as first, 
            max(entry_date) as last
        from my_table
        group by guid
    )
)

Этот запрос работает (показывает все 4 столбца), но добавьте datediff, и он показывает только 3: guid, first, last

select 
    guid,
    first,
    last,
    cast(first as string) as first_string,
    cast(last as string) as last_string
from (
    select 
        guid, 
        min(entry_date) as first, 
        max(entry_date) as last
    from my_table
    group by guid
)

РЕДАКТИРОВАТЬ : я проверил, что дата работает

select datediff('2012-12-31', '2011-12-31')
=> 366

1 Ответ

0 голосов
/ 26 марта 2019

Попробуйте задать псевдонимы в скобках & mdash; может оказаться, что высший выбор не сможет "увидеть" ожидаемые вами столбцы.

...