Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ``` Flux
- // Базовая выборка
- base = from(bucket: "offer_request") |> range(start: - 30d)
- // Выборка из таблицы исходящих платёжных методов
- pm_from = base |> filter(fn: (r) => r._measurement == "pm_from")
- // Выборка из таблицы входящих платёжных платёжных методов
- pm_to = base |> filter(fn: (r) => r._measurement == "pm_to")
- // Выборка из таблицы типов источников
- source_types = base |> filter(fn: (r) => r._measurement == "source_type")
- // Выборка из таблицы режимов запроса
- mode = base |> filter(fn: (r) => r._measurement == "mode")
- // Объединение таблицы платёжных методов
- pm_join_result = join(
- tables: { pm_from: pm_from,
- pm_to: pm_to },
- on: ["_start", "_stop", "_time", "guest_session_id", "user_id", "username"]
- )
- // Объединение с таблицей типов иточников
- source_types_join_result = join(
- tables: { pm_join_result: pm_join_result,
- source_types: source_types },
- on: ["_start", "_stop", "_time", "guest_session_id", "user_id", "username"]
- )
- // Объединение с таблицей режимов запроса
- join_result = join(
- tables: { source_type: source_types_join_result,
- mode: mode },
- on: ["_start", "_stop", "_time", "guest_session_id", "user_id", "username"]
- )
- // Объединение удаление лишних колонок и группировка запросов
- |> keep(columns: ["_time", "guest_session_id", "user_id", "username"])
- |> group(columns: ["_time", "guest_session_id", "user_id", "username"])
- // Базовая выборка из таблицы исходящих платёжных методов
- entity_base = base |> filter(fn: (r) => r._measurement == "pm_from")
- // Фильтрация исходящих платёжных методов по подходящим запросам
- join(
- tables: { join_result: join_result,
- entity_base: entity_base },
- on: ["_time", "guest_session_id", "user_id", "username"]
- )
- |> distinct()
- |> yield()
- ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement