Halaman ini mengacu pada parameter
case_sensitiveyang merupakan bagian dari model.
case_sensitivejuga dapat digunakan sebagai bagian dari Eksplorasi, yang dijelaskan di halaman dokumentasicase_sensitive(untuk Eksplorasi).
case_sensitivejuga dapat digunakan sebagai bagian dari kolom dimensi atau filter, yang dijelaskan di halaman dokumentasicase_sensitive(untuk kolom).
Penggunaan
case_sensitive: yes
|
Hierarki
case_sensitive |
Nilai Default
yes, jika dialek database mendukung parameter
Menerima
Boolean (yes atau no)
|
Definisi
case_sensitive menentukan apakah filter akan diperlakukan sebagai peka huruf besar/kecil untuk model tertentu. Semua filter yang terkait dengan model akan terpengaruh, termasuk filter yang ditambahkan di UI Eksplorasi, UI Dasbor, kolom filter, atau parameter filters metrik.
case_sensitive berfungsi dengan menyesuaikan klausa WHERE dari SQL yang dihasilkan Looker. Jika case_sensitive: yes, filter dinyatakan dengan = atau LIKE, seperti:
WHERE name = 'bob'
WHERE name LIKE '%bob%'
Saat case_sensitive: no, filter dinyatakan dengan ILIKE (atau yang setara), seperti:
WHERE name ILIKE 'bob'
Sebagian besar dialek SQL mendukung case_sensitive. Namun, jika dialek SQL Anda tidak mendukung parameter case_sensitive, sensitivitas huruf besar/kecil akan bervariasi sesuai dengan penyiapan database Anda, yang biasanya tidak peka huruf besar/kecil. Dukungan dialek tercantum di case_sensitive tidak didukung oleh beberapa dialek SQL.
Contoh
Membuat semua filter peka huruf besar/kecil untuk model:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: yes
explore: explore_name {...}
Membuat semua filter tidak peka huruf besar/kecil untuk model:
connection: "connection_name"
include: "filename_or_pattern"
case_sensitive: no
Tantangan umum
case_sensitive tidak didukung oleh beberapa dialek SQL
Agar Looker mendukung case_sensitive di project Looker Anda, dialek database Anda juga harus mendukungnya. Tabel berikut menunjukkan dialek yang mendukung case_sensitive dalam rilis terbaru Looker:
| Dialek | Didukung? |
|---|---|
| Actian Avalanche | |
| Amazon Athena | |
| Amazon Aurora MySQL | |
| Amazon Redshift | |
| Amazon Redshift 2.1+ | |
| Amazon Redshift Serverless 2.1+ | |
| Apache Druid | |
| Apache Druid 0.13+ | |
| Apache Druid 0.18+ | |
| Apache Hive 2.3+ | |
| Apache Hive 3.1.2+ | |
| Apache Spark 3+ | |
| ClickHouse | |
| Cloudera Impala 3.1+ | |
| Cloudera Impala 3.1+ with Native Driver | |
| Cloudera Impala with Native Driver | |
| DataVirtuality | |
| Databricks | |
| Denodo 7 | |
| Denodo 8 & 9 | |
| Dremio | |
| Dremio 11+ | |
| Exasol | |
| Google BigQuery Legacy SQL | |
| Google BigQuery Standard SQL | |
| Google Cloud PostgreSQL | |
| Google Cloud SQL | |
| Google Spanner | |
| Greenplum | |
| HyperSQL | |
| IBM Netezza | |
| MariaDB | |
| Microsoft Azure PostgreSQL | |
| Microsoft Azure SQL Database | |
| Microsoft Azure Synapse Analytics | |
| Microsoft SQL Server 2008+ | |
| Microsoft SQL Server 2012+ | |
| Microsoft SQL Server 2016 | |
| Microsoft SQL Server 2017+ | |
| MongoBI | |
| MySQL | |
| MySQL 8.0.12+ | |
| Oracle | |
| Oracle ADWC | |
| PostgreSQL 9.5+ | |
| PostgreSQL pre-9.5 | |
| PrestoDB | |
| PrestoSQL | |
| SAP HANA | |
| SAP HANA 2+ | |
| SingleStore | |
| SingleStore 7+ | |
| Snowflake | |
| Teradata | |
| Trino | |
| Vector | |
| Vertica |
DataVirtuality menyediakan lapisan data semantik yang terhubung ke berbagai dialek database. Jika Looker mendukung case_sensitive untuk dialek pokok, maka Looker mendukung case_sensitive untuk DataVirtuality yang terhubung ke dialek tersebut.
Yang perlu diketahui
Anda dapat membuat penelusuran yang peka huruf besar/kecil di MySQL
Anda dapat membuat penelusuran peka huruf besar/kecil di MySQL tanpa menggunakan parameter case_sensitive. Di MySQL, jenis data tertentu, yang disebut string biner, menyimpan teks sebagai serangkaian angka. Penggunaan huruf kapital pada teks akan memengaruhi angka yang digunakan. Oleh karena itu, jika Anda mengonversi teks menjadi string biner, Anda dapat melakukan penelusuran yang peka huruf besar/kecil. Contoh:
dimension: will_NOT_be_case_sensitive {
sql: ${TABLE}.something ;;
}
dimension: will_be_case_sensitive {
sql: CAST(${TABLE}.something AS BINARY) ;;
}