最有效率的“多字段模糊匹配关键字查询”的解决办法
发表于:2007-05-25来源:作者:点击数:
标签:
我们 开发 数据库 应用时,常常需要用到模糊查询。如果同一个条件需要匹配很多字段怎么办呢?通常, 程序员 会每个字段都在 SQL 中field like '%cond%'一次。这样,SQL语句会长得惊人,碰上复杂一点的,甚至SQL语句会因为超长而被数据库拒绝执行。 其实,这
我们
开发数据库应用时,常常需要用到模糊查询。如果同一个条件需要匹配很多字段怎么办呢?通常,
程序员会每个字段都在
SQL中“field like '%cond%'”一次。这样,SQL语句会长得惊人,碰上复杂一点的,甚至SQL语句会因为超长而被数据库拒绝执行。
其实,这个问题只要动动脑筋就很容易解决:
首先,将要匹配相同条件的字段连起来(field1+field2+...)成一个长字符串;
然后再 Like “%cond%”就可以了。
不过这种方法有个问题,就是得权衡多表连接造成的效率降低。一般来说,单表内字段肯定应该连接后再统一like判断;表间字段,则需要先过滤后,再实行这个策略。
采取这个策略,不仅可以缩短SQL,而且能够有效地提高SQL的执行效率。
欢迎访问国内首家旅游比价搜索网站:
搜游记(
http://www.soyoji.com)——搜索,让旅游更轻松!
原文转自:http://www.ltesting.net
|