繁体   English   中英

PHP/MySQL 搜索结果 - 完全匹配优先

[英]PHP/MySQL search results - exact match first

假设我有一系列用户正在通过 JQuery 自动完成下拉菜单搜索的选项:

希普莱克

上湖

下湖

当用户输入“Lake”时,他们会得到按字母顺序排序的结果:

下湖

希普莱克

上湖

有问题的代码类似于

"SELECT name FROM names WHERE name LIKE '%".$q."%' ORDER BY name ASC"

但我想要的是,如果查询完全匹配一个名称,它会首先出现,然后按字母顺序出现其他所有内容 - 所以

下湖

希普莱克

上湖

如何做到这一点?

您始终可以添加ORDER BY子句:

ORDER BY name=? DESC, name

首先按完全匹配排序,然后按实际值排序。 ? 表示搜索词的占位符值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM