mysql - 通过搜索维持顺序

标签 mysql

我有一个位置表,其中包含 150 多个位置,其中包含区域和邮政编码列。我正在使用查询“从类似 %n% 的位置选择区域”,然后我得到结果 Nigdi 尼格迪 尼格迪 金杰沃德 金杰沃德 纳西克

这就是为什么我把 Nasik 排在最后,甚至我的第一个搜索关键字是“n”。 Nasik 在第一个位置有“n”。有人可以帮忙吗?

最佳答案

如果您想按区域中“n”的位置排序,则需要指定。请记住,除非您显式包含order by,否则 SQL 查询将返回无序集。所以:

Select area
from locations
where area like '%n%'
order by instr(area, 'n'), area;

关于mysql - 通过搜索维持顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39007818/

相关文章:

mysql - 使用 OUTFILE 将 mySQL 导出为 CSV

mysql - 如何优化mysql 5.5存储过程

php - Bootstrap 提前输入错误

mysql - CSV加载数据不导入文件

php - Phalcon 模型更新不起作用

php - 在 PHP 和 MYsql 中保存引导时间选择器值

php - SQL 注入(inject) - 向表中插入数据

mysql - 如何选择使用mysql进行计数

mysql - Spring Boot 应用程序中 schema.sql 中的条件/可执行注释

php - Laravel 5.1 后台任务在连接到 Azure Web 作业时查询数据库无法工作