From e3440beae79463d2ddda963a8dd9cf50d1baee5c Mon Sep 17 00:00:00 2001 From: Albert S Date: Sun, 17 Apr 2022 21:29:25 +0200 Subject: [PATCH] shared: sqlitesearch: Avoid joining content table more than once --- shared/sqlitesearch.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/shared/sqlitesearch.cpp b/shared/sqlitesearch.cpp index a335420..749f4ca 100644 --- a/shared/sqlitesearch.cpp +++ b/shared/sqlitesearch.cpp @@ -133,12 +133,17 @@ QSqlQuery SqliteSearch::makeSqlQuery(const LooqsQuery &query) throw LooqsGeneralException("Nothing to search for supplied"); } + bool ftsAlreadyJoined = false; auto tokens = query.getTokens(); for(const Token &token : tokens) { if(token.type == FILTER_CONTENT_CONTAINS) { - joinSql += " INNER JOIN content_fts ON content.id = content_fts.ROWID "; + if(!ftsAlreadyJoined) + { + joinSql += " INNER JOIN content_fts ON content.id = content_fts.ROWID "; + ftsAlreadyJoined = true; + } whereSql += " content_fts.content MATCH ? "; bindValues.append(token.value); }