H2全文搜索订单结果
Posted
技术标签:
【中文标题】H2全文搜索订单结果【英文标题】:H2 fulltext search order results 【发布时间】:2017-01-22 08:42:13 【问题描述】:我有一个名为“AM_API”的表。其中有一个名为“NAME”的列。 我正在使用带有 h2 数据库的 lucene 全文搜索。 我在 AM_API 表中添加了大约 1000 个条目,名称为“Test1”、“Test2”、“Test3”、......“Test1000”
我已经创建了 lucene 全文搜索索引并且搜索工作正常。但是搜索结果顺序不正确。
以下是我的查询。
SELECT APIS.* FROM FTL_SEARCH_DATA ('Tes',0,10) FT, AM_API APIS WHERE FT.TABLE='AM_API' AND APIS.UUID=FT.KEYS[0] ORDER BY APIS.NAME
此查询按以下顺序返回结果。
Test1、Test2、Test3、Test4、Test5、Test6、Test7、Test8、Test9、Test10
但正确的排序顺序应该是
Test1、Test10、Test100、Test1000、Test101、Test102、Test103、Test104、Test105、Test106
如何获取按名称列排序的正确顺序的全文搜索数据
【问题讨论】:
【参考方案1】:将我的查询更改为关注后,它现在按预期对结果进行排序。SELECT APIS.* LEFT JOIN FTL_SEARCH_DATA (?, 0, 0) FT ON API.UUID=FT.KEYS[0] WHERE FT.TABLE='AM_API' GROUP BY UUID ORDER BY NAME
【讨论】:
以上是关于H2全文搜索订单结果的主要内容,如果未能解决你的问题,请参考以下文章