我希望我的搜索结果按照从最小到最大的字符串位置的顺序排列.
例如,搜索“banana”返回:
婴儿食品,李子,香蕉和米饭,紧张
香蕉,脱水或香蕉粉
香蕉,原料
面包,香蕉,从配方准备,用人造黄油制成
CAMPBELL Soup Company,V8 SPLASH果汁饮料,草莓香蕉
CAMPBELL Soup Company,V8 SPLASH冰沙,草莓香蕉
CAMPBELL Soup Company,V8 V. FUSION Juices,Strawberry Banana
因为“香蕉”是结果的第一个字所以想要“香蕉,原始”,并且因为“香蕉”是最后一个字所以想要“CAMPBELL Soup …”最后登场.
我知道我可以使用strpos()来找到位置,但是如何将它们放在一起呢?
解决方法:
您可以在MySQL中轻松完成此操作.
SELECT title,LOCATE('banana',title)
FROM myTable
WHERE LOCATE('banana',title) > 0
ORDER BY LOCATE('banana',title)
title表示MySql表的列.