Конвертировать SQL-запрос в LookML - PullRequest
0 голосов
/ 25 сентября 2019

Необходимо преобразовать этот запрос в LookML

SELECT Accounts_Unlock_Price, 
       Accounts_Upfront_Price,
       Portfolio_Derived_Previous_Cumulative_Paid,
       Portfolio_Derived_Previous_Cumulative_Paid/(Accounts_Unlock_Price - Accounts_Upfront_Price) * 100 AS FRR
FROM Accounts, 
     Portfolio_derived_20
WHERE Accounts.Accounts_Angaza_ID = Portfolio_derived_20.Portfolio_Derived_Account_Angaza_ID

1 Ответ

0 голосов
/ 26 сентября 2019

Структура этого в LookML будет зависеть от вашей модели.SQL на самом деле не конвертируется в LookML, так как LookML генерирует SQL, а не просто переводит его.

LookML использует файлы представлений для описания таблиц, и у вас есть две таблицы,так что вам понадобятся два файла просмотра.Они могут выглядеть примерно так, хотя я просто догадываюсь:

view: accounts {
  sql_table_name: Accounts ;;

  dimension: Accounts_Unlock_Price {
    type: number
    sql: ${TABLE}.Accounts_Unlock_Price ;;
  }

  dimension: Accounts_Upfront_Price {
    type: number
    sql: ${TABLE}.Accounts_Upfront_Price ;;
  }

  dimension: Portfolio_Derived_Previous_Cumulative_Paid {
    type: number
    sql: ${TABLE}.Portfolio_Derived_Previous_Cumulative_Paid ;;
  }

  dimension: FRR {
    type: number
    sql: ${Portfolio_Derived_Previous_Cumulative_Paid}/(${Accounts_Unlock_Price} - ${Accounts_Upfront_Price}) * 100;;
  }

  dimension: Angaza_ID {
    type: number
    sql: ${TABLE}.Accounts_Angaza_ID ;;
  }
}

view: Portfolio_derived {
  sql_table_name: Portfolio_derived_20 ;;
  ##don't know what's in this file

  dimension: Account_Angaza_ID {
    type: number
    sql: ${TABLE}.Portfolio_Derived_Account_Angaza_ID ;;
  }
}

После того, как вы определили поля в представлениях, вам нужно присоединиться к ним в исследовании, чтобы вы могли на самом деле запросить их.

Я снова просто догадываюсь, и похоже, что вы делаете здесь CROSS-соединение, но я не уверен.

explore: accounts_angaza {
  view_name: accounts
  sql_always_where: ${Portfolio_derived.Account_Angaza_ID} = ${accounts.Angaza_ID} ;;

  join: Portfolio_derived {
    type: cross
  }
}

Это позволило бы вам открыть это исследование в Исследовании.Пользовательский интерфейс и визуально выберите Разблокировать цену, первоначальную цену, накопленную плату и FRR, и запросите это.Это простая часть, «построение запроса».Сложнее всего заложить основу для этого, что я и описал чуть выше.

Это может быть полезным ресурсом, если вы сравниваете запросы SQL и Looker, так как в нем объясняется, как Looker генерирует SQL: https://docs.looker.com/data-modeling/learning-lookml/how-looker-generates-sql

Здесь объясняется, как работают объединения, и есть ссылки накомпоненты более низкого уровня, которые вы должны создать, прежде чем присоединитьсяhttps://docs.looker.com/data-modeling/learning-lookml/working-with-joins

Удачи!Если у вас есть еще вопросы, есть целая лотерея Lookers, которая висит на https://discourse.looker.com, так что это может быть хорошим ресурсом для будущих вопросов Looker.

...