Data Їнженер: post #168 — TG.ME

Працюємо з semi-structured даними в Snowflake як профі 🔥

Іноді мені потрібно писати SQL-запити до semi-structured датасетів.
Наприклад, коли в колонці лежить масив JSON-обʼєктів.

🤨 Старий підхід: LATERAL FLATTEN або UDF-функції.
😎 Новий підхід: вбудовані lambda-функції прямо в SQL.

Кілька корисних прикладів 👇

👉 FILTER
Фільтрує масив за умовою.
Наприклад, повернути лише елементи, де поле value ≥ 50:


FILTER(items, i -> i:value >= 50)


👉 REDUCE
Агрегація «на місці».
Наприклад, порахувати суму цін позицій у замовленні:


REDUCE(order_items, 0, (acc, val) -> acc + val:price)


👉 TRANSFORM (мій улюблений 😍)
Проходиться по масиву та трансформує кожен елемент.
Наприклад, отримати всі id з масиву JSON-ів:


TRANSFORM(items, v -> v:id)


Я вже давно так не радів новим фішкам в SQL.
Linkedin
Querying Semi-Structured Data with Snowflake SQL | Oleg Agapov posted on the topic | LinkedIn
Work with semi-structured data in Snowflake like a pro 🔥 Sometimes I need to query semi-structured datasets with SQL. For example, when a column contains an array of JSON objects. 🤨 Old way: using LATERAL FLATTEN or defining UDF functions. 😎 New way: using…
🔥11
January 15, 2026 735 2