From 33b145e6d2013fccd616f00bec428209f2a42ad7 Mon Sep 17 00:00:00 2001 From: Albert S Date: Sat, 19 Dec 2020 12:42:28 +0100 Subject: [PATCH] shared: sqlitesearch: Order by rank by default for content search Making ranked results the default makes (obviously) more sense for content search. --- shared/sqlitesearch.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/shared/sqlitesearch.cpp b/shared/sqlitesearch.cpp index f43bb0e..1d375b1 100644 --- a/shared/sqlitesearch.cpp +++ b/shared/sqlitesearch.cpp @@ -115,7 +115,8 @@ QPair> SqliteSearch::createSql(const Token &token) } if(token.type == FILTER_CONTENT_CONTAINS) { - return {" content.id IN (SELECT content_fts.ROWID FROM content_fts WHERE content_fts.content MATCH ?) ", + return {" content.id IN (SELECT content_fts.ROWID FROM content_fts WHERE content_fts.content MATCH ? ORDER BY " + "rank) ", {value}}; } throw QSSGeneralException("Unknown token passed (should not happen)"); @@ -142,10 +143,6 @@ QSqlQuery SqliteSearch::makeSqlQuery(const QSSQuery &query) QString sortSql = createSortSql(query.getSortConditions()); if(isContentSearch) { - if(sortSql.isEmpty()) - { - sortSql = "ORDER BY file.mtime DESC, content.page ASC"; - } prepSql = "SELECT file.path AS path, group_concat(content.page) AS pages, file.mtime AS mtime, file.size AS size, " "file.filetype AS filetype FROM file INNER JOIN content ON file.id = content.fileid WHERE 1=1 AND " +