22 lines
812 B
SQL
22 lines
812 B
SQL
/*
|
|
This macro converts a timestamp column from Unix epoch time (in milliseconds)
|
|
to a UTC timestamp and a corresponding UTC date.
|
|
|
|
It generates two output fields:
|
|
1. The timestamp in UTC, with the alias formatted as <column_name>_at_utc.
|
|
2. The date in UTC, with the alias formatted as <column_name>_date_utc.
|
|
|
|
This macro is intended to be used within a SELECT statement
|
|
and ensures that the output is properly formatted for further analysis.
|
|
*/
|
|
{% macro unix_ms_timestamp_to_utc(column_name, table_alias=None) %}
|
|
{%- if table_alias -%}
|
|
to_timestamp(
|
|
{{ adapter.quote(table_alias) }}.{{ adapter.quote(column_name) }} / 1000
|
|
) at time zone 'UTC'
|
|
{%- else -%}
|
|
to_timestamp({{ adapter.quote(column_name) }} / 1000) at time zone 'UTC'
|
|
|
|
{%- endif -%}
|
|
|
|
{% endmacro %}
|