sensible à la casse (pour les explorations)

Cette page fait référence au paramètre case_sensitive qui fait partie d'une exploration.

case_sensitive peut également être utilisé dans le cadre d'un modèle, décrit sur la page de documentation du paramètre case_sensitive (pour les modèles).

case_sensitive peut également être utilisé dans une dimension, décrite sur la page de documentation du paramètre case_sensitive (pour les champs).

Utilisation

crawl_name {
case_sensitive: oui
}
Hiérarchie
case_sensitive
Valeur par défaut
yes, si le dialecte de la base de données est compatible avec le paramètre

Acceptation
Une valeur booléenne (yes ou no)

Définition

case_sensitive détermine si les filtres sont ou non sensibles à la casse dans une exploration donnée. Tous les filtres liés à "Explorer" sont affectés, y compris ceux ajoutés dans l'interface utilisateur "Explorer", l'interface utilisateur du tableau de bord et le paramètre filters.

Par défaut, case_sensitivity est activé et les filtres sont sensibles à la casse. Toutefois, certains dialectes n'acceptent pas ce paramètre, comme décrit dans la section case_sensitive n'est pas compatible avec certains dialectes SQL de cette page.

case_sensitive fonctionne en ajustant la clause WHERE du SQL généré par Looker. Lorsque case_sensitive est activé, les filtres sont exprimés par = ou LIKE, par exemple:

WHERE name = 'bob'
WHERE name LIKE '%bob%'

Lorsque case_sensitive est désactivé, les filtres sont exprimés à l'aide de ILIKE (ou équivalent), par exemple:

WHERE name ILIKE 'bob'

Examples

Respectez la casse pour tous les filtres afin d'explorer la section Produit:

explore: product {
  case_sensitive: yes
}

Faites en sorte que tous les filtres ne soient pas sensibles à la casse pour l'onglet Explorer:

explore: customer {
  case_sensitive: no
}

Difficultés courantes

case_sensitive n'est pas compatible avec certains dialectes SQL

Par défaut, case_sensitivity est activé et les filtres sont sensibles à la casse. Si votre dialecte SQL n'est pas compatible avec le paramètre case_sensitive, la sensibilité à la casse variera en fonction de la configuration de votre base de données, qui ne sera généralement pas sensible à la casse.

Pour que Looker soit compatible avec case_sensitive dans votre projet Looker, le dialecte de votre base de données doit également être compatible. Le tableau suivant présente les dialectes compatibles avec case_sensitive dans la dernière version de Looker:

Bon à savoir

Vous pouvez créer une recherche sensible à la casse dans MySQL

Il est possible de créer une recherche sensible à la casse dans MySQL, même si MySQL n'est pas compatible avec le paramètre case_sensitive. Dans MySQL, certains types de données (chaînes binaires) stockent le texte sous forme de série de nombres. L'utilisation de minuscules/majuscules dans le texte fait la différence dans les chiffres utilisés. Par conséquent, si vous convertissez votre texte en chaîne binaire, vous pouvez effectuer des recherches sensibles à la casse. Exemple :

dimension: will_NOT_be_case_sensitive {
  sql: ${TABLE}.something ;;
}

dimension: will_be_case_sensitive {
  sql: CAST(${TABLE}.something AS BINARY) ;;
}