XML中的通配符用法

时间:2011-07-01 10:49:07

标签: xml filter db2 wildcard

需要从DB2表中过滤其中包含B的所有值。 (我们使用将XML与DB2链接起来的工具)

当我使用"B*"时,它会过滤掉B作为第一个字符的所有值,但是当我给出"*B*"时,它会获取数据库中的所有值

<DESC VALUE ="*B*">无效

是否有任何其他方法可以为搜索元素添加通配符前缀。

2 个答案:

答案 0 :(得分:1)

我是第二个彼得,使用'%B%'见Wildcards in DB2 SQL

  

Ofcourse DB2支持通配符,

     

对CHAR数据类型

使用%和LIKE子句      

例如。

     

SELECT * FROM your_table WHERE your_column LIKE'%1234%'

     

这将在字符串&amp;中的任何位置搜索子串1234的匹配项。   您将获得所需的结果:1234 1234AB 1234ABCD AB1234CD

Basic SQL Coding for DB2 Universal Database for OS/390(在“搜索字符串模式”下;

  

SQL有一个强大的谓词,允许您搜索模式   字符串列。这是LIKE谓词。假设你想要   生成名字以。开头的候选人名单   字母G.

SELECT fname,lname,wphone,hphone FROM candidate
WHERE fname LIKE 'G%' ORDER BY lname,fname
     

在此查询中,我们使用带有LIKE谓词的通配符。在   SQL,百分比字符(%)是零或更多的替代   字符。搜索字符串G%可以用如下的名称替换   乔治,加里,姜等等(因为百分之字符可以   替换零个或多个字符,搜索字符串也可以是a   单个字母G)。

     

百分比字符可用于搜索字符串中的任何位置。它   也可以根据需要多次使用。百分号不是   区分大小写,因此它可以取代大写或小写   字母。但是,搜索中包含的常量字符   字符串区分大小写。

答案 1 :(得分:0)

select yourcolumn from yourtable where yourcolumn like '%B%'  

我不知道您的XML工具,但这可能会为您找到解决方案吗?