Афина DateDiff - PullRequest
       26

Афина DateDiff

1 голос
/ 10 октября 2019

Я пытаюсь сделать то, что я считаю простой функцией сравнения даты, но по какой-то причине мое значение единицы читается как столбец ("dd"), поэтому я продолжаю получать столбец , который не может быть разрешен ошибка

Я использую AWS Athena

Мой код такой

SELECT "reservations"."id" "Booking_ID"
    , "reservations"."bookingid" "Booking_Code"
    , "reservations"."property"."id" "Property_id"
    , CAST("from_iso8601_timestamp"("reservations"."created") AS date) "Created"
    , CAST("from_iso8601_timestamp"("reservations"."arrival") AS date) "Arrival"
    , CAST("from_iso8601_timestamp"("reservations"."departure") AS date) "Departure"
    , CAST("from_iso8601_timestamp"("reservations"."modified") AS date) "Modified"
    , date_diff("dd", CAST("from_iso8601_timestamp"("reservations"."created") AS date), CAST("from_iso8601_timestamp"("reservations"."arrival") AS date)) "LoS"
FROM
    "database".reservations
LIMIT 5;

Я пытаюсь получить разницу в днях от "даты создания" и "прибытия"Дата "

Я пробовал date_diff с DD," DD "," dd ", dd, Day, day," day ", и я получаю ту же ошибку.

1 Ответ

3 голосов
/ 10 октября 2019

Афина основана на Престо. См. Документацию Presto для date_diff() - единица является обычной varchar, поэтому она должна идти в одинарных кавычках:

date_diff('day', ts_from, ts_to)
...