当前位置:  开发笔记 > 后端 > 正文

是否可以构建以下SQL查询

如何解决《是否可以构建以下SQL查询》经验,为你挑选了1个好方法。

原始查询看起来像这样(MySQL):

SELECT * 
FROM books 
WHERE title LIKE "%text%" OR description LIKE "%text%" 
ORDER BY date

是否可以重写它(没有工会或程序),因此结果将如下所示:

标题匹配按日期排序的查询的书籍列表,后跟:

描述符合按日期排序的查询的书籍列表

所以基本上只是给匹配标题而不是描述赋予更高的优先级.



1> Rory..:

在sql server中我会做以下事情:

select * from books 
where title like '%text%' or description like '%text%'
order by case when title like '%text%' then 1 else 2 end, date

我不确定你是否可以在mysql中的ORDER BY中包含不在SELECT中的列,但这是我使用的原则.否则,只需在SELECT中包含派生列.

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有