diff --git a/macros/tables/bigquery/eff_sat_v0.sql b/macros/tables/bigquery/eff_sat_v0.sql index 9741b3cf..ad4788d8 100644 --- a/macros/tables/bigquery/eff_sat_v0.sql +++ b/macros/tables/bigquery/eff_sat_v0.sql @@ -64,7 +64,8 @@ current_status AS ( {{ is_active_alias }}, {{ src_rsrc }} FROM {{ this }} - QUALIFY + WHERE {{ src_ldts }} NOT IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 ), @@ -321,6 +322,18 @@ records_to_insert AS ( ) disappeared_hashkeys {%- endif %} + UNION ALL + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + ) SELECT diff --git a/macros/tables/databricks/eff_sat_v0.sql b/macros/tables/databricks/eff_sat_v0.sql index 03585990..f449422e 100644 --- a/macros/tables/databricks/eff_sat_v0.sql +++ b/macros/tables/databricks/eff_sat_v0.sql @@ -65,7 +65,8 @@ current_status AS ( {{ is_active_alias }}, {{ src_rsrc }} FROM {{ this }} - QUALIFY + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 ), @@ -315,6 +316,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/exasol/eff_sat_v0.sql b/macros/tables/exasol/eff_sat_v0.sql index e0796b09..882b63cd 100644 --- a/macros/tables/exasol/eff_sat_v0.sql +++ b/macros/tables/exasol/eff_sat_v0.sql @@ -64,7 +64,8 @@ current_status AS ( {{ is_active_alias }}, {{ src_rsrc }} FROM {{ this }} - QUALIFY + WHERE {{ src_ldts }} NOT IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 ), @@ -313,6 +314,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + ) SELECT diff --git a/macros/tables/fabric/eff_sat_v0.sql b/macros/tables/fabric/eff_sat_v0.sql index cc2f61da..01929bfe 100644 --- a/macros/tables/fabric/eff_sat_v0.sql +++ b/macros/tables/fabric/eff_sat_v0.sql @@ -72,6 +72,7 @@ current_status_prep AS ( {{ src_rsrc }}, ROW_NUMBER() OVER (PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') ), @@ -349,6 +350,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/oracle/eff_sat_v0.sql b/macros/tables/oracle/eff_sat_v0.sql index 60830f2e..195a9ef6 100644 --- a/macros/tables/oracle/eff_sat_v0.sql +++ b/macros/tables/oracle/eff_sat_v0.sql @@ -72,6 +72,7 @@ current_status_prep AS ( {{ src_rsrc }}, ROW_NUMBER() OVER (PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) ), @@ -349,6 +350,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + ) SELECT diff --git a/macros/tables/postgres/eff_sat_v0.sql b/macros/tables/postgres/eff_sat_v0.sql index 4b06ea83..fd6207d9 100644 --- a/macros/tables/postgres/eff_sat_v0.sql +++ b/macros/tables/postgres/eff_sat_v0.sql @@ -72,6 +72,7 @@ current_status_prep AS ( {{ src_rsrc }}, ROW_NUMBER() OVER (PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') ), @@ -349,6 +350,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/redshift/eff_sat_v0.sql b/macros/tables/redshift/eff_sat_v0.sql index 181e2776..b54516e0 100644 --- a/macros/tables/redshift/eff_sat_v0.sql +++ b/macros/tables/redshift/eff_sat_v0.sql @@ -71,7 +71,8 @@ current_status AS ( {{ is_active_alias }}, {{ src_rsrc }} FROM {{ this }} redshift_requires_an_alias_if_the_qualify_is_directly_after_the_from - QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 ), {% endif %} @@ -319,6 +320,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/snowflake/eff_sat_v0.sql b/macros/tables/snowflake/eff_sat_v0.sql index 1d4ffb80..86332afb 100644 --- a/macros/tables/snowflake/eff_sat_v0.sql +++ b/macros/tables/snowflake/eff_sat_v0.sql @@ -70,6 +70,7 @@ current_status AS ( {{ is_active_alias }}, {{ src_rsrc }} FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') QUALIFY ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) = 1 @@ -319,6 +320,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT @@ -340,4 +353,4 @@ WHERE NOT EXISTS ( ) {% endif %} -{%- endmacro -%} +{%- endmacro -%} \ No newline at end of file diff --git a/macros/tables/sqlserver/eff_sat_v0.sql b/macros/tables/sqlserver/eff_sat_v0.sql index 20cdbeec..fb8dc7d4 100644 --- a/macros/tables/sqlserver/eff_sat_v0.sql +++ b/macros/tables/sqlserver/eff_sat_v0.sql @@ -72,6 +72,7 @@ current_status_prep AS ( {{ src_rsrc }}, ROW_NUMBER() OVER (PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') ), @@ -349,6 +350,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/synapse/eff_sat_v0.sql b/macros/tables/synapse/eff_sat_v0.sql index 67a062a4..404f30a0 100644 --- a/macros/tables/synapse/eff_sat_v0.sql +++ b/macros/tables/synapse/eff_sat_v0.sql @@ -72,6 +72,7 @@ current_status_prep AS ( {{ src_rsrc }}, ROW_NUMBER() OVER (PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') ), @@ -349,6 +350,18 @@ records_to_insert AS ( {%- endif %} + UNION + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ('{{ datavault4dbt.beginning_of_all_times() }}', '{{ datavault4dbt.end_of_all_times() }}') + ) SELECT diff --git a/macros/tables/trino/eff_sat_v0.sql b/macros/tables/trino/eff_sat_v0.sql index e4c2dfbb..99623ef7 100644 --- a/macros/tables/trino/eff_sat_v0.sql +++ b/macros/tables/trino/eff_sat_v0.sql @@ -74,6 +74,7 @@ current_status AS ( {{ src_rsrc }}, ROW_NUMBER() OVER(PARTITION BY {{ tracked_hashkey }} ORDER BY {{ src_ldts }} DESC) as rn FROM {{ this }} + WHERE {{ src_ldts }} NOT IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) ) t WHERE rn = 1 @@ -331,6 +332,18 @@ records_to_insert AS ( ) disappeared_hashkeys {%- endif %} + UNION ALL + SELECT + {{ tracked_hashkey }}, + {% for col in additional_columns -%} + {{ col }}, + {% endfor -%} + {{ src_ldts }}, + {{ src_rsrc }}, + 1 as {{ is_active_alias }} + FROM {{ source_relation }} src + WHERE {{ src_ldts }} IN ({{ datavault4dbt.string_to_timestamp(timestamp_format, beginning_of_all_times) }}, {{ datavault4dbt.string_to_timestamp(timestamp_format, end_of_all_times) }}) + ) SELECT