我有一个名为" AM_API"的表。其中有一个名为" NAME"的列。 我正在使用lucene全文搜索与h2数据库。 我在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
如何按正确的顺序获取按名称列
排序的全文搜索数据答案 0 :(得分:0)
将我的查询更改为以下后,它会按预期对结果进行排序
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