SQLite的Glob子句

SQLite的GLOB运算符仅文本值对使用通配符模式相匹配。当搜索表达式被与图案表达式匹配,则操作者GLOB将返回true为1。
的操作者GLOB如下UNIX的语法用于指定以下通配符。

  • 星号符号(*):该标志表示零个或多个号码或字符
  • 问号(?):这个标志代表一个数字或字符。
句法:
语法星号标志:
SELECT FROM table_name WHERE column GLOB 'XXXX*' or SELECT FROM table_name WHERE column GLOB '*XXXX*'

语法问号:
SELECT FROM table_name WHERE column GLOB 'XXXX?' or SELECT FROM table_name WHERE column GLOB '?XXXX' or SELECT FROM table_name WHERE column GLOB '?XXXX?' or SELECT FROM table_name WHERE column GLOB '????'

例:
我们有一个表名为“学生”具有以下数据:
在这些例子中具有“*”和不同的BLOB条款“?”的WHERE语句运营商:
声明描述
WHERE FEES GLOB ‘ 200*’ 查找以200开头的任何值
WHERE费用GLOB ‘ * 200 *’ 查找任意位置上具有200的任何值
WHERE FEES GLOB ‘ ?00*’ 查找在第二和第三的位置有00的任何值
WHERE FEES GLOB ‘ 2??’ 查找任何以2开头且长度至少为3个字符的值
WHERE费用GLOB ‘ * 2’ 查找以2结尾的任何值
WHERE FEES GLOB ‘ ?2*3’ 发现,在第二位置,并且端与3具有2的任何值
WHERE FEES GLOB ‘ 2???3’ 查找以2开头,以3结尾的五位数中的任何值
例1:
选择“学生”表中的所有记录,其中岁开始就以2:
SELECT * FROM STUDENT WHERE AGEGLOB '2*';

输出:
例2:
选择从表“学生”的所有记录,其中费用开始2:
SELECT * FROM STUDENT WHERE FEESGLOB '2*';

【SQLite的Glob子句】输出:

    推荐阅读