Esta página se refere ao parâmetro
sql_table_name
que faz parte de uma mesclagem.
sql_table_name
também pode ser usado como parte de uma visualização, descrita na página de documentação de parâmetrosql_table_name
(para visualizações).O
sql_table_name
também pode ser usado como parte de uma exploração, descrita na página de documentação do parâmetrosql_table_name
(para explorações).
Uso
join: view_name {
sql_table_name: table_name ;;
}
}
Hierarquia
sql_table_name |
Valor padrão
NenhumaAceita
Um nome de tabela no banco de dadosRegras especiais
|
Definição
Normalmente, a visualização em que um join
se baseia define a tabela a ser consultada.
É possível usar sql_table_name
para definir a tabela no banco de dados a ser consultada por um join
. Isso é incomum, mas pode ser útil quando várias tabelas têm o mesmo esquema. Isso permite que a mesma visualização seja usada para descrever todas elas. sql_table_name
permite especificar quais tabelas devem ser usadas pela visualização de que você está mesclando. Nessas situações, use extends
ou refinamentos.
Para referenciar uma tabela de um esquema diferente, use schema_name.table_name
. Para referenciar uma tabela de outro banco de dados, use database_name.schema_name.table_name
. No entanto, as mesclagens entre bancos de dados exigem que eles estejam na mesma máquina e estejam no mesmo dialeto SQL.
Se você não especificar explicitamente o esquema, o Looker usará o padrão definido. O padrão é configurado na seção Administrador do Looker em Conexões.
Examples
Faça a mesclagem de customers
depender da tabela customer_1
do esquema padrão:
explore: orders {
join: customers {
sql_table_name: customer_1 ;;
sql_on: ${order.customer_id} = ${customer.id} ;;
}
}
Faça o customers
explorar depender da tabela customer_1
do esquema analytics
:
explore: orders {
join: customers {
sql_table_name: analytics.customer_1 ;;
sql_on: ${order.customer_id} = ${customer.id} ;;
}
}
Desafios comuns
As tabelas referenciadas por sql_table_name
precisam ser acessíveis pela conexão atual
sql_table_name
será usado com uma mesclagem que, por sua vez, faz parte de um modelo. O modelo terá uma conexão de banco de dados definida. Qualquer tabela referenciada em sql_table_name
precisa ser acessível nessa conexão de banco de dados.
Informações úteis
Para nomear uma join
de maneira diferente da tabela, aplique sql_table_name
no nível da visualização.
É comum usar sql_table_name
no nível do join
, como descrito nesta página. Ele só deve ser usado quando a mesma visualização pode descrever várias tabelas.
O método mais comum é usar sql_table_name
no nível da visualização para nomear uma visualização de maneira diferente do nome da tabela.
Em vez disto:
Arquivo de modelo
explore: orders {
join: customers {
sql_table_name: customer_1 ;;
sql_on: ${order.customer_id} = ${customer.id} ;;
}
}}
faça isto:
Arquivo de modelo
explore: orders {
join: customers {
sql_on: ${order.customer_id} = ${customer.id} ;;
}
}
Ver arquivo
view: customers {
sql_table_name: customer_1 ;;
}