English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SQLite GLOB
استخدام علامات التبويب للسماح فقط بتماثل القيم النصية مع النمط. إذا كان تعبير البحث يمكنه التطابق مع تعبير النمط، فإن عمود GLOB سيعود صحيحًا، أي 1. يختلف GLOB عن عمود LIKE في أنه يفرق بين الحروف الكبيرة والصغيرة ويتبع نحو UNIX لتعريف التالي من علامات التبديل.
النجم (* )
العلامة (?)
النجم (* ) يعني أي عدد من الأرقام أو الأحرف. العلامة (?) تمثل حرفًا أو رقمًا واحدًا فقط.
هذه هي النحو الأساسي*
وال?
。
SELECT FROM table_name WHERE column GLOB 'XXXX*' أو SELECT FROM table_name WHERE column GLOB '*XXXX*' أو SELECT FROM table_name WHERE column GLOB 'XXXX?' أو SELECT FROM table_name WHERE column GLOB '?XXXX' أو SELECT FROM table_name WHERE column GLOB '?XXXX?' أو SELECT FROM table_name WHERE column GLOB '????'
يمكنك استخدام عمليات AND أو OR لدمج عدة شروط. هنا،XXXX يمكن أن يكون أي قيمة رقمية أو نصية.
下表列出了许多示例,这些示例显示WHERE部分的LIKE子句带有不同的'*'和'?' 运算符。
序号 | 声明与说明 |
---|---|
1 |
查找以200开头的任何值 |
2 |
查找任何位置有200的值 |
3 |
查找在第二和第三位置具有00的任何值 |
4 |
查找以2开头且长度至少为3个字符的任何值 |
5 |
查找以2结尾的任何值 |
6 |
查找第二个位置带有2并以3结尾的任何值 |
7 |
查找以2开头和3结束的五位数数字中的任何值 |
让我们以一个真实的实例为例,考虑带有以下记录的COMPANY表-
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
下面是一个示例,它将显示COMPANY表中的所有记录,其中AGE以2开头。
sqlite> SELECT * FROM COMPANY WHERE AGE GLOB '2*';
这将产生以下结果。
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
以下是一个示例,它将显示COMPANY表中的所有记录,其中ADDRESS在文本内将带有连字符(-)-
sqlite> SELECT * FROM COMPANY WHERE ADDRESS GLOB '*-*';
这将产生以下结果。
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 4 Mark 25 Rich-Mond 65000.0 6 Kim 22 South-Hall 45000.0