Esta página se refere ao parâmetro
case_sensitive
que faz parte de um modelo.O
case_sensitive
também pode ser usado como parte de uma exploração, descrita na página de documentaçãocase_sensitive
(para explorações).O
case_sensitive
também pode ser usado como parte de um campo de dimensão ou filtro, descrito na página de documentaçãocase_sensitive
(para campos).
Uso
Hierarquia
case_sensitive |
Valor padrão
yes , se o dialeto do banco de dados oferecer suporte ao parâmetroAceita
Um booleano (yes ou no )
|
Definição
case_sensitive
determina se os filtros serão tratados diferenciando maiúsculas de minúsculas em um determinado modelo. Todos os filtros relacionados ao modelo são afetados, incluindo aqueles adicionados na IU do Explore, na IU do painel, em um campo de filtro ou no parâmetro filters
de uma medida.
case_sensitive
funciona ajustando a cláusula WHERE
do SQL gerado pelo Looker. Quando case_sensitive: yes
, os filtros são expressos com =
ou LIKE
, como:
WHERE name = 'bob'
WHERE name LIKE '%bob%'
Quando case_sensitive: no
, os filtros são expressos com ILIKE
(ou equivalente), como:
WHERE name ILIKE 'bob'
A maioria dos dialetos SQL é compatível com case_sensitive
. No entanto, se o dialeto SQL não for compatível com o parâmetro case_sensitive
, a diferenciação de maiúsculas e minúsculas varia de acordo com a configuração do banco de dados, o que geralmente não diferencia maiúsculas de minúsculas. O suporte ao dialeto está listado abaixo.
Examples
Faça com que todos os filtros diferenciem maiúsculas de minúsculas de um modelo:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: yes
explore: explore_name {...}
Torne todos os filtros que não diferenciam maiúsculas de minúsculas de um modelo:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: no
Desafios comuns
case_sensitive
não tem suporte em alguns dialetos SQL
Para que o Looker ofereça suporte a case_sensitive
no projeto do Looker, o dialeto do banco de dados também precisa ser compatível. A tabela a seguir mostra quais dialetos oferecem suporte a case_sensitive
na versão mais recente do Looker:
O DataVirtuality fornece uma camada de dados semântica que se conecta a vários dialetos de banco de dados. Se o Looker aceitar case_sensitive
para os dialetos subjacentes, ele vai ter suporte ao case_sensitive
para o DataVirtuality se conectar a eles.
Informações úteis
É possível criar uma pesquisa que diferencia maiúsculas de minúsculas no MySQL
É possível criar uma pesquisa que diferencia maiúsculas de minúsculas no MySQL sem usar o parâmetro case_sensitive
. No MySQL, determinados tipos de dados, chamados strings binárias, armazenam texto como uma série de números. As letras maiúsculas do texto fazem diferença nos números usados. Portanto, ao converter o texto em uma string binária, é possível fazer pesquisas com diferenciação entre maiúsculas e minúsculas. Exemplo:
dimension: will_NOT_be_case_sensitive {
sql: ${TABLE}.something ;;
}
dimension: will_be_case_sensitive {
sql: CAST(${TABLE}.something AS BINARY) ;;
}