대소문자 구분 (탐색용)

이 페이지에서는 탐색의 일부인 case_sensitive 매개변수를 설명합니다.

case_sensitivecase_sensitive(모델용) 매개변수 문서 페이지에 설명된 대로 모델의 일부로 사용할 수도 있습니다.

case_sensitivecase_sensitive(필드용) 매개변수 문서 페이지에 설명된 측정기준의 일부로 사용할 수도 있습니다.

용도

Explore: Explore_name {
case_sensitive:
}
계층 구조
case_sensitive
기본값
yes(데이터베이스 언어가 매개변수

을 지원하는 경우)
결제 가능
부울 (yes 또는 no)

정의

case_sensitive는 지정된 탐색에서 필터를 대소문자를 구분할지 여부를 결정합니다. 탐색 UI, 대시보드 UI, filters 매개변수에 추가된 필터를 비롯하여 탐색과 관련된 모든 필터가 영향을 받습니다.

기본적으로 case_sensitivity는 사용 설정되어 있으며 필터는 대소문자를 구분합니다. 그러나 이 페이지의 일부 SQL 언어에서는 case_sensitive가 지원되지 않음에 설명된 대로 일부 방언은 이 매개변수를 지원하지 않습니다.

case_sensitive는 Looker에서 생성하는 SQL의 WHERE 절을 조정하여 작동합니다. case_sensitive를 사용 설정하면 필터는 다음과 같이 = 또는 LIKE로 표현됩니다.

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

case_sensitive가 사용 중지되면 필터는 다음과 같이 ILIKE (또는 상응하는 클래스)로 표현됩니다.

WHERE name ILIKE 'bob'

Examples

제품 탐색의 모든 필터를 대소문자를 구분합니다.

explore: product {
  case_sensitive: yes
}

Customer Explore에서 모든 필터를 대소문자를 구분하지 않습니다.

explore: customer {
  case_sensitive: no
}

일반 과제

case_sensitive는 일부 SQL 언어에서 지원되지 않습니다.

기본적으로 case_sensitivity는 사용 설정되어 있으며 필터는 대소문자를 구분합니다. SQL 언어가 case_sensitive 매개변수를 지원하지 않으면 대소문자 구분은 데이터베이스 설정에 따라 달라지며 일반적으로는 대소문자를 구분하지 않습니다.

Looker 프로젝트에서 case_sensitive를 지원하려면 데이터베이스 언어에서도 Looker를 지원해야 합니다. 다음 표는 최신 Looker 버전에서 case_sensitive를 지원하는 언어를 보여줍니다.

알아두어야 할 사항

MySQL에서 대소문자 구분 검색을 만들 수 있습니다.

MySQL에서 case_sensitive 매개변수를 지원하지 않더라도 MySQL에서 대소문자를 구분하는 검색을 만들 수 있습니다. MySQL에서는 바이너리 문자열이라고 하는 특정 데이터 유형이 텍스트를 일련의 숫자로 저장합니다. 텍스트에 대문자를 사용하면 사용되는 숫자에 차이가 있습니다. 따라서 텍스트를 바이너리 문자열로 변환하면 대소문자를 구분하는 검색을 할 수 있습니다. 예를 들면 다음과 같습니다.

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

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