Latest web development tutorials

SQLite는 글롭 절

GLOB 연산자 SQLite에 것은 텍스트 값 지정 와일드 패턴을 일치시키는 데 사용된다.검색 식 표현 패턴 매칭, GLOB 연산자는 참 (true)를 반환하는 경우, 하나되는 것입니다. 그리고 LIKE 연산자는 GLOB은 UNIX 구문을 다음과 다음 와일드 카드에 대해, 대소 문자를 구분, 다릅니다.

  • 별표 (*)

  • 물음표 (?)

별표 (*)는 0 개, 1 개 이상의 숫자 또는 문자를 나타낸다. 물음표 (?)가 한 자리 또는 문자를 나타냅니다. 이 기호는 조합하여 사용할 수있다.

문법

? * 그리고 다음과 같이 기본 구문은 다음과 같습니다

TABLE_NAME FROM SELECT
WHERE 열 GLOB 'XXXX *'

또는 

TABLE_NAME FROM SELECT
WHERE 열 GLOB '* XXXX *'

또는

TABLE_NAME FROM SELECT
WHERE 열 GLOB 'XXXX?'

또는

TABLE_NAME FROM SELECT
WHERE 열 GLOB? 'XXXX'

또는

TABLE_NAME FROM SELECT
WHERE 열 GLOB '? XXXX?'

또는

TABLE_NAME FROM SELECT
WHERE 열 GLOB '????'

당신은 조건의 N 번호를 결합하기 위해 AND 나 OR 연산자를 사용할 수 있습니다. 여기서 XXXX는 숫자 또는 문자열 값이 될 수 있습니다.

다음 예는 '*'와 운영자와 다른 장소의 GLOB 절을 보여 '?'

语句描述
WHERE SALARY GLOB '200*'查找以 200 开头的任意值
WHERE SALARY GLOB '*200*'查找任意位置包含 200 的任意值
WHERE SALARY GLOB '?00*'查找第二位和第三位为 00 的任意值
WHERE SALARY GLOB '2??'查找以 2 开头,且长度至少为 3 个字符的任意值
WHERE SALARY GLOB '*2'查找以 2 结尾的任意值
WHERE SALARY GLOB '?2*3'查找第二位为 2,且以 3 结尾的任意值
WHERE SALARY GLOB '2???3'查找长度为 5 位数,且以 2 开头以 3 结尾的任意值

이제 실제적인 예를 들어 보자, 가정하자 회사 테이블에는 다음과 같은 기록이있다 :

ID의 이름 나이 주소 급여
---------- ---------- ---------- ---------- ----------
1 폴 (32) 캘리포니아 20000.0
2 알렌 (25) 텍사스 15000.0
3 테디 (23) 노르웨이 20000.0
4 마크 (25) 리치 사교계 65000.0
5 다윗 (27) 텍사스 85000.0
6 김 (22) 사우스 홀 45000.0
7 제임스 (24) 휴스턴 10000.0

다음은 예입니다,이 회사 테이블 AGE 2로 시작하는 모든 레코드를 보여줍니다

sqlite가> SELECT * FROM 회사 WHERE AGE의 GLOB의 '2 *';

이것은 다음과 같은 결과를

ID의 이름 나이 주소 급여
---------- ---------- ---------- ---------- ----------
2 알렌 (25) 텍사스 15000.0
3 테디 (23) 노르웨이 20000.0
4 마크 (25) 리치 사교계 65000.0
5 다윗 (27) 텍사스 85000.0
6 김 (22) 사우스 홀 45000.0
7 제임스 (24) 휴스턴 10000.0

(-) 다음은 예입니다, 그것은 텍스트 회사 주소 테이블에 하이픈이 포함되어 표시 모든 레코드를 :

sqlite가> WHERE ADDRESS의 GLOB '* - *'회사 SELECT * FROM;

이것은 다음과 같은 결과를

ID의 이름 나이 주소 급여
---------- ---------- ---------- ---------- ----------
4 마크 (25) 리치 사교계 65000.0
6 김 (22) 사우스 홀 45000.0