Latest web development tutorials

SQLite Glob klausa

SQLite OperatorGLOB digunakan untuk mencocokkan pola wildcard nilai teks yang ditentukan.Jika ekspresi pencarian dan pencocokan pola ekspresi, operator GLOB mengembalikan benar (true), yang 1. Dan operator LIKE berbeda, GLOB adalah kasus sensitif, untuk wildcard berikut, yang mengikuti sintaks UNIX.

  • Tanda bintang (*)

  • Pertanyaan tanda (?)

Tanda bintang (*) mewakili nol, satu atau lebih digit atau karakter. Tanda tanya (?) Merupakan satu digit atau karakter. Simbol-simbol ini dapat digunakan dalam kombinasi.

tatabahasa

? * Dan sintaks dasar adalah sebagai berikut:

SELECT FROM table_name
MANA kolom GLOB 'XXXX *'

atau 

SELECT FROM table_name
MANA kolom GLOB '* XXXX *'

atau

SELECT FROM table_name
MANA kolom GLOB 'XXXX?'

atau

SELECT FROM table_name
MANA kolom GLOB '? XXXX'

atau

SELECT FROM table_name
MANA kolom GLOB '? XXXX?'

atau

SELECT FROM table_name
MANA kolom GLOB '????'

Anda dapat menggunakan AND atau OR operator untuk menggabungkan jumlah N dari kondisi. Di sini, XXXX dapat berupa angka atau string value.

contoh

Contoh berikut menunjukkan tempat-tempat yang berbeda GLOB klausa dengan '*' dan operator '?':

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

Mari kita contoh praktis, meja PERUSAHAAN anggaplah memiliki catatan berikut:

ID NAMA UMUR ALAMAT GAJI
---------- ---------- ---------- ---------- ----------
1 Paul 32 California 20.000,0
2 Allen 25 Texas 15.000,0
3 Teddy 23 Norwegia 20.000,0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 South-Hall 45.000,0
7 James 24 Houston 10.000,0

Berikut adalah contoh, hal itu menunjukkan tabel PERUSAHAAN AGE 2 semua catatan yang dimulai dengan:

sqlite> SELECT * DARI PERUSAHAAN MANA AGE GLOB '2 *';

Ini menghasilkan hasil sebagai berikut:

ID NAMA UMUR ALAMAT GAJI
---------- ---------- ---------- ---------- ----------
2 Allen 25 Texas 15.000,0
3 Teddy 23 Norwegia 20.000,0
4 Mark 25 Rich-Mond 65.000,0
5 David 27 Texas 85.000,0
6 Kim 22 South-Hall 45.000,0
7 James 24 Houston 10.000,0

Berikut adalah contoh, ini akan menampilkan tabel ALAMAT PERUSAHAAN teks berisi tanda hubung (-) semua catatan:

sqlite> SELECT * DARI PERUSAHAAN DIMANA ALAMAT GLOB '* - *';

Ini menghasilkan hasil sebagai berikut:

ID NAMA UMUR ALAMAT GAJI
---------- ---------- ---------- ---------- ----------
4 Mark 25 Rich-Mond 65.000,0
6 Kim 22 South-Hall 45.000,0