今天在工作中遇到一个多表查询,并且按精准度匹配排序的一个需求,费了我好大劲在此和大家分享一些心得
开始我是想根据他的搜索字段的长度来排序,但是遇到图二的这种结果就不好排序了 order by abs(len(Pd_name)-len('甲醇'))
然后我想到了第二种方法,使用case when。 order by CASE WHEN pd_name = '甲醇' THEN 100 ELSE 1000 END
如图三,最好解决了我的问题,第一次写博客,技术和表达都需要提高,勿喷
今天在工作中遇到一个多表查询,并且按精准度匹配排序的一个需求,费了我好大劲在此和大家分享一些心得
开始我是想根据他的搜索字段的长度来排序,但是遇到图二的这种结果就不好排序了 order by abs(len(Pd_name)-len('甲醇'))
然后我想到了第二种方法,使用case when。 order by CASE WHEN pd_name = '甲醇' THEN 100 ELSE 1000 END
如图三,最好解决了我的问题,第一次写博客,技术和表达都需要提高,勿喷