SQL:如何搜索文本字段

时间:2013-01-20 08:36:19

标签: sql oracle11g

我有一个表,其中一列包含xml文件的内容。在这些xml文件中,有些包含文本HASH_VALUE。我想找出具有文本HASH_VALUE的xml文件的行。我试图使用like(%HASH_VALUE%),但这不会检索任何行

任何人都可以解释我如何做到这一点。

提前感谢任何帮助

1 个答案:

答案 0 :(得分:2)

以下是两种方法:

一个使用xml:

select id, xml_col 
from t 
where xmlelement(r, xmltype(xml_col)).extract('//HASH_VALUE') is not null;

另一个是你的方式:

select id, xml_col 
from t 
where xml_col like '%HASH_VALUE%';

Here is a sqlfiddle demo