我还没有找到一个问题来回答这样一个具体的例子,但如果我错过了什么,请原谅.

如果我想要 Select 包含特定单词'Apple'的记录,但想要确保省略可能包含单词'PineApple'的记录,在这种情况下,LIKE运算符是否允许这样做,或者是否需要进一步限制:

E.g

SELECT ID, Manufacturer FROM Table1 WHERE Manufacturer LIKE '%apple%'

非常感谢.

推荐答案

要仅使用LIKE且不使用正则表达式来完成此操作,您可以try :

SELECT ID, Manufacturer
FROM Table1
WHERE Manufacturer LIKE 'apple %' OR    -- at the start of the name
      Manufacturer LIKE '% apple %' OR  -- in the middle
      Manufacturer LIKE '% apple';      -- at the end

假设您的SQL版本确实支持某种类型的正则表达式,例如,您可以匹配模式\bapple\b,这意味着匹配apple作为一个独立的单词.

Sql相关问答推荐

Select 最大值,但当并列时,从其他列 Select 最大值

SQL使最终结果显示两个表后的所有数据(匹配和不匹配)?

在postgres中动态计算出现次数并插入到json中

R中对Arrow duckdb工作流的SQL查询

Postgres:对包含数字的字符串列表进行排序

SQL -滞后于上一个非重复值

更新其组的日期字段值小于最大日期减go 天数的记录

每年独特口味的冰淇淋数量

两个不同星期的销售额,不加成一行

如何从Spark SQL的JSON列中提取动态数量的键值对

我需要一个regexp_like来只验证字母D或T、数字和管道

根据要过滤的列的值进行联接和分组

没有调用子查询的嵌套 JOIN语法是什么?

如何在 case 语句中使用聚合?

Select 多年的日期范围

过滤具有一对多关系的两个表之间的数据

SQLite 中的过滤运行总和视图

基于源表的 SQL INSERT、UPDATE 和 DELETE

使用 SAVE TRANSACTION 时 BEGIN 和 COMMIT 语句的数量不匹配

使用标准SQL 触发更新当前日期