如何使用空间在 android 中实施 FTS?

How to implement FTS in android using room?

我需要在我的应用程序中执行搜索操作,因此我尝试使用 android 中的房间实现全文搜索。但是我没有得到想要的 output.The 我不清楚查询。我在下面提到了查询:

  @Query("SELECT posts.postId,posts.authorName,posts.authorImageUrl,posts.title,posts.message,posts.thumbnailUrl,posts.downloadUrl,posts.postTimeStamp,posts.type,posts.seenByUser,posts.mimeType,posts.isBookmarked FROM postsFts JOIN posts ON (posts.postId = postsFts.postId)")
fun searchInPostsLocalDB(query: String): List<PostsModel>

我想在输出中获取匹配行的列表。

您缺少 match,它检查哪一行与查询匹配。所以答案是:

   @Query("SELECT * FROM postsFts JOIN posts ON (posts.postId = postsFts.postId) WHERE postsFts MATCH :query")
fun searchInPostsLocalDB(query: String): List<PostsModel>

并使用 * 包围 query 使其成为通配符。

例如:*tarun*