Конвертировать в am / pm в Импала - PullRequest
0 голосов
/ 24 сентября 2018

Как и в аналогичном запросе на этом форуме, мне нужно, но мне нужно, чтобы он работал в Impala: enter image description here

В качестве обходного пути мой коллега и я попытались сделать следующее:

-- combine start date and time into a datetime
-- impala can't handle am/pm so need to look for pm indicator and add 12 hours
-- and then subtract 12 hours if it's 12:xx am or pm
 ================

t1.appt_time,
hours_add(
      to_timestamp(concat(to_date(t1.appt_date),' ',t1.appt_time),'yyyy-MM-dd H:mm'),
      12*decode(lower(strright(t1.appt_time,2)),"pm",1,0) - 
      12*decode(strleft(t1.appt_time,2),'12',1,0)
    ) as appt_datetime,

t1....

========= Есть ли у кого-нибудь более простой и элегантный подход?

1 Ответ

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

Ваш обходной путь действителен, в настоящее время Impala поддерживает форматирование AM / PM для дат.Есть несколько открытых вопросов, связанных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...