Latest web development tutorials

Clausola SQLite Glob

SQLite L'operatoreGLOB viene utilizzato per abbinare un modello jolly valore di testo specificato.Se l'espressione di ricerca e di espressione pattern matching, operatore GLOB restituisce true (vero), che è 1. E l'operatore LIKE è diverso, GLOB è case sensitive, per i seguenti caratteri jolly, che segue la sintassi di UNIX.

  • Un asterisco (*)

  • Il punto interrogativo (?)

Un asterisco (*) rappresenta zero, uno o più cifre o caratteri. Il punto interrogativo (?) Rappresenta una singola cifra o carattere. Questi simboli possono essere utilizzati in combinazione.

grammatica

? * E la sintassi di base è la seguente:

SELECT FROM table_name
DOVE colonna GLOB 'XXXX *'

o 

SELECT FROM table_name
DOVE colonna GLOB '* * XXXX'

o

SELECT FROM table_name
DOVE colonna GLOB 'XXXX?'

o

SELECT FROM table_name
DOVE colonna GLOB '? XXXX'

o

SELECT FROM table_name
DOVE colonna GLOB '? XXXX?'

o

SELECT FROM table_name
DOVE colonna GLOB '????'

È possibile utilizzare l'operatore AND o OR per combinare il numero N di condizioni. Qui, XXXX può essere qualsiasi numero o una stringa di valore.

Esempi

I seguenti esempi dimostrano la clausola GLOB luoghi diversi con '*' e gli operatori '?':

语句描述
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 结尾的任意值

Facciamo un esempio pratico, tavolo SOCIETÀ supponiamo che ha i seguenti documenti:

NOME ID Età Indirizzo STIPENDIO
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
3 Teddy 23 Norvegia 20000.0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Sud-Hall 45.000,0
7 James 24 Houston 10000.0

Ecco un esempio, mostra la tabella COMPANY AGE 2 tutti i record che iniziano con:

sqlite> SELECT * FROM AZIENDA DOVE AGE GLOB '2 *';

Questo produce i seguenti risultati:

NOME ID Età Indirizzo STIPENDIO
---------- ---------- ---------- ---------- ----------
2 Allen 25 Texas 15000.0
3 Teddy 23 Norvegia 20000.0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 Sud-Hall 45.000,0
7 James 24 Houston 10000.0

Ecco un esempio, visualizza la tabella di testo SOCIETA 'INDIRIZZO contiene un trattino (-) tutti i record:

sqlite> SELECT * FROM AZIENDA DOVE INDIRIZZO GLOB '* - *';

Questo produce i seguenti risultati:

NOME ID Età Indirizzo STIPENDIO
---------- ---------- ---------- ---------- ----------
4 Mark 25 Rich-Mond 65.000,0
6 Kim 22 Sud-Hall 45.000,0