SQLite:匹配字符列表中的所有项目

问题描述 投票:0回答:1

我正在使用一个表(本质上是一个单词列表,即一本字典),并且需要从该表创建一个仅包含 3 个特定字符的项目子集,比如说“A”、“P” 、和“Z”。

显然,我可以使用 GLOB 或 LIKE,如下所示:

其中单词“%A%”和单词“%P%”和单词“%P%”

...但我似乎记得曾经用单个 GLOB 语句做了类似的事情,尽管我无法找到我这样做的代码。在网上搜索之后,甚至咨询了 ChatGPT(这告诉我这是不可能的,无论什么价值!),我想我应该在这里问。

我尝试了使用 NOT 和 ^ 否定字符的 GLOB 模式的各种组合,但都无济于事,尽管我似乎记得这就是我曾经成功解决问题的方法。

sqlite pattern-matching glob sql-like
1个回答
0
投票

而且,你知道吗,我刚刚回忆起我做这个的项目,但我把这个问题留下来,因为它可能对某人来说很有趣!

SELECT Word 
FROM Words 
WHERE NOT 'ZAP' GLOB '*[^' || Word || ']*';

基本上,将“搜索”术语与“搜索”术语交换,并将 NOT 与 ^ 运算符一起使用。

我知道我不会发疯!

© www.soinside.com 2019 - 2024. All rights reserved.