长句中单词的SQL通配符用法

时间:2017-08-10 03:58:03

标签: sql database oracle

当数据库列存储较长的句子并且匹配条件是其中的单词时,我试图理解SQL通配符的用法。假设TABLEA中有一行ColumnA存储The quick brown fox jumps over the lazy dog(数据类型为VARCHAR2且db为ora12c)。

我想返回ColumnA中的句子包含brown关键字的行。以下查询没有返回任何内容

SELECT * FROM TABLEA WHERE ColumnA LIKE '%brown'

SELECT * FROM TABLEA WHERE ColumnA LIKE '_brown'

我的主要参考是https://www.w3schools.com/sql/sql_wildcards.asp,但我似乎无法找到最终计算通配符用法的方法。如果有人能解释我正在解决的问题的正确用法,我很高兴。 谢谢!

2 个答案:

答案 0 :(得分:2)

SELECT * FROM  TABLEA WHERE ColumnA LIKE '%brown%'

答案 1 :(得分:2)

基本上你要查询的是:

给我TableA中的所有内容,其中ColumnA以棕色

结尾

您还需要在条件结尾处添加%以将其转换为:

给我TableA中的所有内容,其中ColumnA包含棕色

SELECT * FROM TableA WHERE ColumnA LIKE '%brown%'