Преобразование значений в Афина Престо - PullRequest
0 голосов
/ 01 мая 2018

У меня есть несколько вещей, которых я хочу достичь с помощью Presto. В настоящее время я получаю некоторые данные в следующих форматах

  1. date 16-Jan-2018
  2. num 1000

Я хочу написать запрос, который может преобразовать эти значения в

  1. 2018-01-16
  2. 1,000

1 Ответ

0 голосов
/ 03 мая 2018

На дату вы можете сделать следующее:

select date_parse('date 16-Jan-2018','date %d-%b-%Y')

Для второго поля вам придется сначала разделить его с помощью split (string, delimiter), а затем привести второй элемент массива к INTEGER.

Вот полный ответ:

SELECT date_parse(date_string,'date %d-%b-%Y') as parsed_date, 
       CAST(
            split(int_string, ' ')[2] AS INTEGER
       ) as parsed_int 
  FROM (VALUES ('date 16-Jan-2018', 'int 1000')) 
    AS t(date_string, int_string)
...