博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

巧用sql来进行多字段的查询 .

Posted on 2012-12-17 10:36  love楠  阅读(859)  评论(0编辑  收藏  举报

假设只有一个table,名为pages,有四个字段,id, url,title,body。里面储存了很多网页,网页的url地址,title和网页的内容,然后你用一个sql查询将url匹配的排在最前,title匹配的其次,body匹配最后,没有任何字段匹配的,不返回。
select a.[id],a.mark from
(
select [page].[id],
100 as mark from [page] where [page].[url] like '%baidu%'
union
select [page].[id],
50 as mark from [page] where [page].[title] like '%baidu%'
union
select [page].[id],
10 as mark from [page] where [page].[body] like '%baidu%'
as a  order by mark desc