Files
dbt-f2dq/macros/utils/fivetran_utils/json_extract.sql
T
M7XBeastandCursor ff096b51b5 Initial publish of dbt_f2dq (f2dq) package v0.12.1.
Clean package repo for Gitea installs via packages.yml git URL.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-11 17:37:40 +03:00

41 lines
1.1 KiB
SQL

{#
# This file contains significant part of code derived from
# https://github.com/fivetran/dbt_fivetran_utils/tree/v0.4.0 which is licensed under Apache License 2.0.
#}
{% macro json_extract(string, string_path) -%}
{{ adapter.dispatch('json_extract','f2dq') (string, string_path) }}
{%- endmacro %}
{% macro default__json_extract(string, string_path) %}
json_extract_path_text({{string}}, {{ "'" ~ string_path ~ "'" }} )
{% endmacro %}
{% macro snowflake__json_extract(string, string_path) %}
json_extract_path_text(try_parse_json( {{string}} ), {{ "'" ~ string_path ~ "'" }} )
{% endmacro %}
{% macro redshift__json_extract(string, string_path) %}
case when is_valid_json( {{string}} ) then json_extract_path_text({{string}}, {{ "'" ~ string_path ~ "'" }} ) else null end
{% endmacro %}
{% macro bigquery__json_extract(string, string_path) %}
json_extract_scalar({{string}}, {{ "'$." ~ string_path ~ "'" }} )
{% endmacro %}
{% macro postgres__json_extract(string, string_path) %}
{{string}}::json->>{{"'" ~ string_path ~ "'" }}
{% endmacro %}