将刻度转换为日期时间

Convert ticks to Datetime

我想将 datetimeInTicks(长)转换为 U-sql 中的 DateTime。像这样:

Select DateTime.Parse(LastModifiedUtcDateTimeTicks, "dd/MM/yyyy HH:mm:ss", null) AS ProcessedTime FROM @extractVariable

当然,这会出错,因为第一个参数应该是一个字符串。 U-sql是否支持此转换?

据我所知,U-SQL 使用 .NET 类型。 .NET DateTime 有一个构造函数,可以根据刻度创建 DateTime。只是一种预感,但这可能有效:

Select new DateTime(LastModifiedUtcDateTimeTicks) AS ProcessedTime FROM @extractVariable

正如 Akos 所指出的,您可以将报价传递给 DateTime 构造函数,然后使用 .net ToString 方法来格式化字符串,例如

@output =
    SELECT new DateTime(LastModifiedUtcDateTimeTicks).ToString("dd/MM/yyyy HH:mm:ss") AS ProcessedTime
    FROM @extractVariable;