search 연산자
적용 대상: ✅Microsoft Fabric✅✅
여러 테이블 및 열에서 텍스트 패턴을 검색합니다.
참고 항목
검색하려는 특정 테이블 및 열을 알고 있는 경우 공용 구조체 및 위치 연산자를 사용하는 것이 더 성능이 좋습니다.
search
많은 수의 테이블과 열을 검색할 때 연산자가 느려질 수 있습니다.
구문
[T|
] search
[kind=
CaseSensitivity ] [in
(
TableSources)
] SearchPredicate
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
T | string |
테이블 이름 , 공용 구조체 연산자 또는 테이블 형식 쿼리의 결과와 같이 검색할 테이블 형식 데이터 원본입니다. TableSources함께 지정할 수 없습니다. | |
CaseSensitivity | string |
대/소문자 구분과 관련하여 string 모든 has 스칼라 연산자의 동작을 제어하는 플래그입니다. 유효한 값은 default , case_insensitive . case_sensitive 기본 동작은 대/소문자를 구분하지 않으므로 옵션 default 과 case_insensitive 동의어입니다. |
|
TableSources | string |
검색에 참여할 "와일드카드" 테이블 이름의 쉼표로 구분된 목록입니다. 목록에는 공용 구조체 연산자 목록과 동일한 구문이 있습니다. 테이블 형식 데이터 원본(T)과 함께 지정할 수 없습니다. | |
SearchPredicate | string |
✔️ | 입력의 모든 레코드에 대해 계산할 부울 식입니다. 반환 true 되는 경우 레코드가 출력됩니다. 검색 조건자 구문을 참조 하세요. |
참고 항목
테이블 형식 데이터 원본(T)과 TableSources 모두 생략하면 범위 내 데이터베이스의 모든 무제한 테이블과 뷰를 검색합니다.
검색 조건자 구문
SearchPredicate를 사용하면 테이블의 모든 열에서 특정 용어를 검색할 수 있습니다. 검색 용어에 적용되는 연산자는 다음 표와 같이 용어의 와일드카드 별표(*
)의 존재 및 배치에 따라 달라집니다.
리터럴 | 연산자 |
---|---|
billg |
has |
*billg |
hassuffix |
billg* |
hasprefix |
*billg* |
contains |
bi*lg |
matches regex |
검색을 특정 열로 제한하거나, 용어 일치 대신 정확한 일치 항목을 찾거나, 정규식으로 검색할 수도 있습니다. 이러한 각 사례에 대한 구문은 다음 표에 나와 있습니다.
구문 | 설명 |
---|---|
ColumnName: StringLiteral |
이 구문을 사용하여 검색을 특정 열로 제한할 수 있습니다. 기본 동작은 모든 열을 검색하는 것입니다. |
ColumnName== StringLiteral |
이 구문을 사용하여 문자열 값에 대한 열의 정확한 일치 항목을 검색할 수 있습니다. 기본 동작은 용어 일치를 찾는 것입니다. |
StringLiteral 열matches regex |
이 구문은 StringLiteral이 정규식 패턴인 정규식 일치를 나타냅니다. |
부울 식을 사용하여 조건을 결합하고 더 복잡한 검색을 만듭니다. 예를 들어 "error" and x==123
열에 용어 error
가 있고 열의 값 123
이 있는 레코드를 검색합니다 x
.
검색 조건자 구문 예제
# | 구문 | 의미(해당 where ) |
설명 |
---|---|---|---|
1 | search "err" |
where * has "err" |
|
2 | search in (T1,T2,A*) "err" |
union T1,T2,A* | where *에 "err"이 있습니다. |
|
3 | search col:"err" |
where col has "err" |
|
4 | search col=="err" |
where col=="err" |
|
5 | search "err*" |
where * hasprefix "err" |
|
6 | search "*err" |
where * hassuffix "err" |
|
7 | search "*err*" |
where * contains "err" |
|
8 | search "Lab*PC" |
where * matches regex @"\bLab.*PC\b" |
|
9 | search * |
where 0==0 |
|
10 | search col matches regex "..." |
where col matches regex "..." |
|
11 | search kind=case_sensitive |
모든 문자열 비교는 대/소문자를 구분합니다. | |
12 | search "abc" and ("def" or "hij") |
where * has "abc" and (* has "def" or * has hij") |
|
13 | search "err" or (A>a and A<b) |
where * has "err" or (A>a and A<b) |
설명
찾기 연산자달리 search
연산자는 다음 구문을 지원하지 않습니다.
-
withsource=
: 출력에는 항상 각 레코드가 검색된 테이블 이름(또는 원본이 테이블이 아니라 복합 식인 경우 시스템 생성 이름)인string
형식의$table
열이 포함됩니다. -
project=
,project-smart
: 출력 스키마는 출력 스키마와project-smart
동일합니다.
예제
이 섹션의 예제에서는 구문을 사용하여 시작하는 방법을 보여 주었습니다.
이 문서의 예제에서는 샘플 데이터베이스의
StormEvents
테이블과 같은 도움말 클러스터공개적으로 사용할 수 있는 테이블을 사용합니다.
이 문서의 예제에서는 날씨 분석 샘플 데이터
StormEvents
테이블과 같이 공개적으로 사용 가능한 테이블을 사용합니다.
전역 용어 검색
ContosoSales 데이터베이스의 모든 테이블에서 녹색이라는 용어를 검색합니다.
출력은 Customers
, Products
및 SalesTable
테이블의 성 또는 색으로 녹색 용어가 있는 레코드를 찾습니다.
search "Green"
출력
$table | CityName | ContinentName | CustomerKey | 교육 | FirstName | 성별 | LastName |
---|---|---|---|---|---|---|---|
고객 | 발라드 | 북아메리카 | 16549 | 부분 대학 | 석공 | M | 녹색 |
고객 | 벨링햄 | 북아메리카 | 2070 | 고등학교 | 아담 | M | 녹색 |
고객 | 벨링햄 | 북아메리카 | 10658 | 학사 | 사라 | F | 녹색 |
고객 | 비벌리 힐스 | 북아메리카 | 806 | 대학원 학위 | 리처드 | M | 녹색 |
고객 | 비벌리 힐스 | 북아메리카 | 7674 | 대학원 학위 | 야고보 | M | 녹색 |
고객 | 버 뱅크 | 북아메리카 | 5241 | 대학원 학위 | 매들린 | F | 녹색 |
조건부 전역 용어 검색
ContosoSales 데이터베이스에서 녹색 용어와 디럭스 또는 Proseware 용어 중 하나가 포함된 레코드를 검색합니다.
search "Green" and ("Deluxe" or "Proseware")
출력
$table | ProductName | 생산자 | ColorName | ClassName | ProductCategoryName |
---|---|---|---|---|---|
제품 | Contoso 8GB 시계 & 라디오 MP3 플레이어 X850 녹색 | Contoso, Ltd | 녹색 | 호화로운 | 오디오 |
제품 | Proseware Scan Jet Digital Flat Bed Scanner M300 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
제품 | Proseware All-In-One Photo Printer M200 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
제품 | Proseware Ink Jet Wireless All-In-One Printer M400 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
제품 | Proseware Ink Jet Instant PDF Sheet-Fed 스캐너 M300 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
제품 | Proseware Desk Jet 올인원 프린터, 스캐너, 복사기 M350 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
제품 | Proseware Duplex Scanner M200 Green | Proseware, Inc. | 녹색 | 일반 | 컴퓨터 |
특정 테이블 검색
Customers
테이블에서만 녹색 용어를 검색합니다.
search in (Products) "Green"
출력
$table | ProductName | 생산자 | ColorName |
---|---|---|---|
제품 | Contoso 4G MP3 플레이어 E400 Green | Contoso, Ltd | 녹색 |
제품 | Contoso 8GB Super-Slim MP3/Video Player M800 Green | Contoso, Ltd | 녹색 |
제품 | Contoso 16GB Mp5 Player M1600 Green | Contoso, Ltd | 녹색 |
제품 | Contoso 8GB 시계 & 라디오 MP3 플레이어 X850 녹색 | Contoso, Ltd | 녹색 |
제품 | NT 무선 블루투스 스테레오 헤드폰 M402 그린 | Northwind Traders | 녹색 |
제품 | NT 무선 송신기 및 블루투스 헤드폰 M150 그린 | Northwind Traders | 녹색 |
대/소문자 구분 검색
ContosoSales 데이터베이스에서 대/소문자를 구분하는 용어와 일치하는 레코드를 검색합니다.
search kind=case_sensitive "blue"
출력
$table | ProductName | 생산자 | ColorName | ClassName |
---|---|---|---|---|
제품 | Contoso 16GB 차세대 MP5 플레이어 M1650 blue | Contoso, Ltd | 파랑 | 일반 |
제품 | Contoso Bright Light 배터리 E20 Blue | Contoso, Ltd | 파랑 | 경제 |
제품 | Litware 120mm Blue LED 케이스 팬 E901 blue | Litware, Inc. | 파랑 | 경제 |
NewSales | Litware 120mm Blue LED 케이스 팬 E901 blue | Litware, Inc. | 파랑 | 경제 |
NewSales | Litware 120mm Blue LED 케이스 팬 E901 blue | Litware, Inc. | 파랑 | 경제 |
NewSales | Litware 120mm Blue LED 케이스 팬 E901 blue | Litware, Inc. | 파랑 | 경제 |
NewSales | Litware 120mm Blue LED 케이스 팬 E901 blue | Litware, Inc. | 파랑 | 경제 |
특정 열 검색
ContosoSales 데이터베이스의 "FirstName" 및 "LastName" 열에서 Aaron 및 Hughes 용어를 검색합니다.
search FirstName:"Aaron" or LastName:"Hughes"
출력
$table | CustomerKey | 교육 | FirstName | 성별 | LastName |
---|---|---|---|---|---|
고객 | 18285 | 고등학교 | 라일리 | F | 휴즈 |
고객 | 802 | 대학원 학위 | 아론 | M | 샤르마 주 |
고객 | 986 | 학사 | 멜 라 니 | F | 휴즈 |
고객 | 12669 | 고등학교 | 제시카 | F | 휴즈 |
고객 | 13436 | 대학원 학위 | 머라이어 주 | F | 휴즈 |
고객 | 10152 | 대학원 학위 | 아론 | M | 캠벨 |
타임스탬프별 검색 제한
용어가 'datetime'에서 지정된 날짜보다 큰 레코드에 표시되는 경우 ContosoSales 데이터베이스에서 Hughes라는 용어를 검색합니다.
search "Hughes" and DateKey > datetime('2009-01-01')
출력
$table | DateKey | SalesAmount_real |
---|---|---|
SalesTable | 2021-12-13T00:00:00Z | 446.4715 |
SalesTable | 2021-12-13T00:00:00Z | 120.555 |
SalesTable | 2021-12-13T00:00:00Z | 48.4405 |
SalesTable | 2021-12-13T00:00:00Z | 39.6435 |
SalesTable | 2021-12-13T00:00:00Z | 56.9905 |
성능 팁
# | 팁 | 좋아하다 | 위 |
---|---|---|---|
1 | 여러 연속 search 연산자보다 단일 search 연산자를 사용하는 것이 좋습니다. |
search "billg" and ("steveb" or "satyan") |
검색 "billg" | "steveb" 또는 "satyan" 검색 |
2 | 연산자 내에서 필터링하는 것이 좋습니다.search |
search "billg" and "steveb" |
검색 * | where *에는 "billg"가 있고 * 에는 "steveb"가 있습니다. |