2017-08-10 32 views
0

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

我想返回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

本质上讲要查询的是:

给我的一切,从表A,其中ColumnA与棕色

结束后,您需要在条件的末尾添加%,以及把它成:

给我的一切,从表A,其中ColumnA包含棕色

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