【问题标题】:H2 fulltext search order resultsH2全文搜索订单结果
【发布时间】: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

如何获取按名称列排序的正确顺序的全文搜索数据

【问题讨论】:

    标签: database lucene full-text-search h2


    【解决方案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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-06
      • 2012-06-13
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      相关资源
      最近更新 更多