내가 아는 유일한 방법은 일종의 '사용 당 kludge'입니다.
예를 들어 속성 번호 배열 (속성 이름 propnum_array
, dtype varchar[]
) 이 포함 된 데이터가 있으며 때로는 배열이 비어있는 데이터를 식별하려고합니다.
에 대한 테스트 propnum_array = {}
또는 propnum_array is null
또는 propnum[0]=''
그러나 내가 할 수있는 (또는 주제 유형의 다른 변형) QGIS 개그를하게 regexp_match( propnum_array,'\\d')
하거나 propnum_array ilike '{""}'
또는 propnum_array = '{""}'
및 파티션 비어 있습니다 물건에 데이터 propnum_array
하지 않은 물건을.
이것이 의미하는 것은 배열에 구조 (예 : 배열의 특정 요소에 대한 특정 값)가있는 경우이를 스캔 할 수 있다는 것입니다. 3 요소 배열의 두 번째 요소가 'Y'인 모든 값을 원하면 같은 것을 원할 것입니다 regexp_match( propnum_array,'[,]*\'Y\'\[,]*')
(일치 문자열 내부의 쉼표와 작은 따옴표를 피해야하지만 다른 사람이 걱정할 유스 케이스).
propnum_array ilike '{""}'
작동 한다는 사실은 QGIS가 배열을 텍스트 인 것처럼 취급한다는 것을 나타냅니다. 또는 필요한 경우 즉시 텍스트로 캐스트 할 수 있지만 배열 유형이 문서화되지 않은 경우 (AFAIK)는 의미가 없습니다. 배열 처리에 대한 문서를 찾을 수 없었으며 osgeo-qgis 메일 링리스트에 2015 년 1 월까지 질문이 있습니다.
'데이터 기반 입력 마스크' 플러그인이 v1.0.0 이후 배열 처리를 가지고 있음을 이해하지만 표현식 편집기에 배열 함수가 없다는 것이 주요 힌트입니다 (2015 년 2 월).