Home  >  Article  >  Backend Development  >  这句mysql语句如何排先后呀

这句mysql语句如何排先后呀

WBOY
WBOYOriginal
2016-06-13 13:27:03814browse

这句mysql语句怎么排先后呀?
SELECT * FROM text where (`title` like '%我们%' and `title` like '%他们%') or (`title` like '%我们%' or `title` like '%他们%') limit 6

有办法先把前一个条件的(`title` like '%我们%' and `title` like '%他们%')列出来在列出后面条件的吗?

------解决方案--------------------
试试这样?

SQL code
SELECT *, ((`title` like '%我们%' and `title` like '%他们%') * 0.8 + (`title` like '%我们%' or `title` like '%他们%') * 0.2) AS relevance
FROM text
WHERE (`title` like '%我们%' and `title` like '%他们%') or (`title` like '%我们%' or `title` like '%他们%') 
ORDER BY relevance DESC
limit 6
<br><font color="#e78608">------解决方案--------------------</font><br>
SQL code
SELECT * FROM 
(
         SELECT * FROM `text` where `title` like '%我们%' and `title` like '%他们%'
) tt
WHERE  `title` like '%我们%' or `title` like '%他们%' limit 6;
<br><font color="#e78608">------解决方案--------------------</font><br>
SQL code
SELECT *, 1 as xh FROM text where (`title` like '%我们%' and `title` like '%他们%')
union
SELECT *, 2 as xh FROM text where (`title` like '%我们%' or `title` like '%他们%')
order by xh
limit 6 <div class="clear">
                 
              
              
        
            </div>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn