我得到了两辆摩托车的数据库:
- 雅马哈 R1 白色 2000 和
- 雅马哈 R125 白色 2005
当我发送查询时:
SELECT * FROM bikes WHERE title LIKE '%$search%'
然后,当我搜索“yamaha R125”时,一切正常,但当您搜索“yamaha R1”时 那么你会得到两个结果 yamaha R1 和 yamaha R125。
任何人都可以指定自己想要的标题,因此标题可以是“yamaha R1 白色 2005”,但也可以 “雅马哈 R1 状况良好”。
知道如何解决吗?
最佳答案
只要你使用LIKE,MySQL就无法理解。只有两种解决方案:-
1. Either segregate model and color from that single field and keep it in separate field
2. SELECT * FROM bikes where title like 'yamaha R1%' AND title like '%2000';
关于php - mysql/php 搜索标签引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14256189/