Преобразование времени потока данных фабрики данных Azure для нескольких форматов дат с использованием производного столбца

#azure #datetime #timestamp #azure-data-factory #azure-data-flow

Вопрос:

Разработка ведется в Фабрике данных Azure-Поток данных

  1. Я получаю входной файл с различными столбцами и одним столбцом с форматом даты (‘ММ/дд/гггг ‘ Ч:мм:сс’).
  2. Я пытаюсь преобразовать вышеуказанный формат даты в метку времени(«гггг-ММ-дд ЧЧ:мм:сс.СС»)
  3. Я попробовал использовать приведенный ниже формат на вкладке «Производный столбец» для конкретного столбца, необходимого в раковине, ниже приведено выражение, используемое для преобразования такого случая. iifNull(toTimestamp(<string_column_name>,'MM/dd/yyyy'T'HH:mm:ss'), toTimestamp(<string_column_name>,'yyyy-MM-dd HH:mm:ss.SSS'))
  4. Для справки я прилагаю образец формата даты, полученный во входном файле 01/26/2018 00:00:00 .
  5. Ссылка 4, должна быть преобразована в формат as 2018-01-26 00:00:00 .

Ответ №1:

Указанный вами формат даты 01/26/2018 00:00:00 не содержится 'MM/dd/yyyy HH:mm:ss' в вашем выражении. Это приводит к тому, что вы получили ноль. Если в вашей колонке также есть формат » ММ/дд/гггг ‘ЧЧ:мм:сс» и «гггг-ММ-дд ЧЧ:мм:сс.СС», вы можете попробовать это выражение:

 iifNull(toTimestamp(<string_column_name>,'MM/dd/yyyy'T'HH:mm:ss'), toTimestamp(<string_column_name>,'yyyy-MM-dd HH:mm:ss.SSS'),toTimestamp(<string_column_name>,'MM/dd/yyyy HH:mm:ss'))
 

Предварительный просмотр данных:

введите описание изображения здесь

Комментарии:

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