ehxz 发表于 2006-5-12 10:00:21

[转帖]sybase like 通配符 模糊查询

<p>---作者:jackcao<br/>---Email:caojack@gmail.com&nbsp;&nbsp; <br/>---MSN:weilake@hotmail.com<br/>通配符&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 含义<br/>%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 任意包含0个或多个字符的字符串<br/>_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 任何单个字符<br/>[]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 指定范围(或集合)内的任何单个字符<br/>[^]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 不在指定范围([^a-f]或集合[^abcdef])内的任何但个字符<br/>例如&nbsp; 表中的数据<br/>表&nbsp; A 中有字段&nbsp; QY_ID &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; QY_ID<br/>----------------------------<br/>070100000217835<br/>07010000021783a<br/>07010000021783b<br/>07010000021783c<br/>07010000021783d<br/>0701000002178aa<br/>0701000002178ba<br/>0701000002178ca<br/>0701000002178da<br/>------------------------------<br/>共9条记录<br/>前提条件:字段QY_ID为15为的char类型的字符,为了说明方便,记录只是最后两位不一样!<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '0701000002178[^a]a'<br/>意义:查找倒数第二位字符不为a而最后一位字符为a的记录<br/>执行结果:<br/>07010000021783a<br/>0701000002178ba<br/>0701000002178ca<br/>0701000002178da<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '0701000002178[^a-c]a' <br/>意义:查找倒数第二位字符不为a到c之间的字符,而最后一位字符为a的记录<br/>执行结果<br/>07010000021783a<br/>0701000002178da<br/>共2条记录<br/>4条记录<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '07010000021783[^a-e]'<br/>意义:[^]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 不在指定范围([^a-f]或集合[^abcdef])内的任何但个字符<br/>即:查找最后一位不在a到e之间的任意字符的记录<br/>执行结果:<br/>070100000217835<br/>一条记录<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '07010000021783'<br/>意义[]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 指定范围(或集合)内的任何单个字符<br/>即查找最后一位为a到e之间的任意字符的记录执行结果<br/>07010000021783a<br/>07010000021783b<br/>07010000021783c<br/>07010000021783d<br/>4 条记录<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '07010000021783_'<br/>意义:_&nbsp; 任何但个字符,即查找最后一位为任意字符的记录,该语句和<br/>select&nbsp; QY_ID&nbsp; from&nbsp; A&nbsp; where&nbsp; QY_ID&nbsp; LIKE '07010000021783%'执行结果一致<br/>执行结果<br/>070100000217835<br/>07010000021783a<br/>07010000021783b<br/>07010000021783c<br/>07010000021783d<br/>5条记录<br/>以上测试结果是在sybase12.5的数据库中执行的。</p><p>转自:<a href="http://spaces.msn.com/jackcaoplace/blog/cns!89C41DD4CDB3F879!151.entry">http://spaces.msn.com/jackcaoplace/blog/cns!89C41DD4CDB3F879!151.entry</a></p>

cc_sld 发表于 2006-6-8 20:13:05

Good
页: [1]
查看完整版本: [转帖]sybase like 通配符 模糊查询

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com