SQLite之 GLOB运算符(入门到精通教程含源码SwiftUI)
2023-09-11 14:18:48 时间
GLOB运算符
GLOB运算符与LIKE相似,但其通配符使用Unix文件全局语法。此外,与LIKE不同,GLOB区分大小写。GLOB和LIKE都可以在NOT关键字之前,以反转测试的意义。通过调用函数glob(Y,X)可实现infix GLOB运算符 ,并且可以通过重写该函数来对其进行修改。
GLOB来源
glob命令是global的缩写,它起源于Bell Labs的Unix的最早版本。该命令解释器依赖于单独的程序来将通配符字符扩展为命令的未加引号的参数:/ etc / glob。该程序执行了扩展,并向命令提供了扩展的文件路径列表以供执行。
Glob最初是用B编程语言编写的。这是用高级编程语言开发的第一个主线Unix软件。后来,此功能作为C库函数提供,glob()由诸如shell之类的程序使用。它通常是基于fnmatch()函数定义的,该函数测试字符串是否匹配给定的模式。
传统上,glob与Unix点文件形式的隐藏文件不匹配;要匹配它们,模式必须明确以开头.。例如,*匹配所有可见文件,而.*匹配所有隐藏文件。
GLOB 与 Like 区别
标准SQL在其LIKE运算符中使用类似于glob的语法进行简单字符串匹配,尽管SQL社区中通常不使用术语“ glob”。
SQL的许多实现已将LIKE运算符扩展为允许使用更丰富的模式匹配语言,并结合了字符范围([…]),其取反和正则表达式的元素。
参考代码
select id,name from foods
where name glob 'Pine*'
技术交流
群名称:SQL与SQLite技术交流
群号:606928109