Loading...
Loading...
Deep dive into LookML includes, refinements (layering), and project structure best practices. Essential for mastering Looker's object-oriented capabilities.
npx skill4agent add lkrdev/lookml_skills lookml-refinementsinclude*/views/*.view/views*.view/**/*.view//project-name/views/*.viewinclude: "/**/*.view"include: "/views/users.view"include: "/views/finance/*.view"view: users { ... }view: +users { ... }include+usersincludedrill_fieldsdescriptionlabel.explore.lkmlexplores/orders.explore.lkmlincludeexplore: orders { ... }models/my_model.model.lkmlinclude: "/explores/orders.explore.lkml"explore//lkr_block/users.viewview: users {
dimension: id { primary_key: yes }
dimension: name {}
}views/users_rfn.viewinclude: "//lkr_block/users.view"
view: +users {
# 1. New Dimension
dimension: email {
sql: ${TABLE}.email ;;
}
# 2. Modify Existing Dimension
dimension: name {
label: "Full Name"
description: "Legal name of the user."
}
}explores/marketing_orders.explore.lkmlinclude: "/views/orders.view"
include: "/views/users.view"
# Refine users ONLY for this explore to add marketing-specific fields
view: +users {
dimension: acquisition_channel {
sql: ${TABLE}.utm_source ;;
}
}
explore: marketing_orders {
view_name: orders
from: orders # mapping 'orders' view to 'orders' alias (standard)
join: users {
sql_on: ${orders.user_id} = ${users.id} ;;
}
}