Questa pagina si riferisce al parametro
case_sensitive
che fa parte di un modello.
case_sensitive
può essere utilizzato anche come parte di un'esplorazione, descritto nella pagina della documentazionecase_sensitive
(per le esplorazioni).
case_sensitive
può essere utilizzato anche come parte di un campo dimensione o filtro, descritto nella pagina della documentazionecase_sensitive
(per i campi).
Utilizzo
Gerarchia
case_sensitive |
Valore predefinito
yes , se il dialetto del database supporta il parametroAccetta
Un valore booleano (yes o no )
|
Definizione
case_sensitive
determina se i filtri verranno trattati come sensibili alle maiuscole per un determinato modello. Sono interessati tutti i filtri relativi al modello, inclusi quelli aggiunti nell'interfaccia utente di Esplora, nella dashboard, in un campo filtro o nel parametro filters
di una misura.
case_sensitive
funziona modificando la clausola WHERE
dell'SQL generato da Looker. Quando case_sensitive: yes
, i filtri sono espressi con =
o LIKE
, ad esempio:
WHERE name = 'bob'
WHERE name LIKE '%bob%'
Quando case_sensitive: no
, i filtri sono espressi con ILIKE
(o equivalente), ad esempio:
WHERE name ILIKE 'bob'
La maggior parte dei dialetti SQL supporta case_sensitive
. Tuttavia, se il dialetto SQL non supporta il parametro case_sensitive
, la sensibilità alle maiuscole varia in base alla configurazione del database, che di solito non è sensibile alle maiuscole. Il supporto del dialetto è elencato di seguito.
Esempi
Per un modello, fai in modo che tutti i filtri siano sensibili alle maiuscole:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: yes
explore: explore_name {...}
Rendi tutti i filtri non sensibili alle maiuscole per un modello:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: no
Sfide comuni
case_sensitive
non è supportato da alcuni dialetti SQL
Affinché Looker supporti case_sensitive
nel tuo progetto Looker, deve essere supportato anche il dialetto del tuo database. La tabella seguente mostra quali dialetti supportano case_sensitive
nell'ultima release di Looker:
DataVirtuality fornisce un livello dati semantico che si connette a vari dialetti di database. Se Looker supporta case_sensitive
per i dialetti sottostanti, supporta anche case_sensitive
per DataVirtuality che si connette ai dialetti.
Aspetti da tenere presenti
Puoi creare una ricerca sensibile alle maiuscole in MySQL
È possibile creare una ricerca sensibile alle maiuscole in MySQL senza utilizzare il parametro case_sensitive
. In MySQL, alcuni tipi di dati, chiamati stringhe binarie, memorizzano il testo come una serie di numeri. L'uso delle lettere maiuscole del testo fa la differenza nei numeri utilizzati. Pertanto, se converti il testo in una stringa binaria, puoi eseguire ricerche sensibili alle maiuscole. Ad esempio:
dimension: will_NOT_be_case_sensitive {
sql: ${TABLE}.something ;;
}
dimension: will_be_case_sensitive {
sql: CAST(${TABLE}.something AS BINARY) ;;
}