이 페이지에서는 탐색의 일부인
case_sensitive
매개변수를 설명합니다.
case_sensitive
는case_sensitive
(모델용) 매개변수 문서 페이지에 설명된 대로 모델의 일부로 사용할 수도 있습니다.
case_sensitive
는case_sensitive
(필드용) 매개변수 문서 페이지에 설명된 측정기준의 일부로 사용할 수도 있습니다.
용도
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) ;;
}