search: fixed: order by after group by in content search
This commit is contained in:
		| @@ -107,7 +107,7 @@ QString SqliteSearch::createSortSql(const SqliteSearch::Token &token) | |||||||
|     //sort:(mtime desc, page asc) |     //sort:(mtime desc, page asc) | ||||||
|     if(token.key == "sort") |     if(token.key == "sort") | ||||||
|     { |     { | ||||||
|         QString sortsql = " ORDER BY "; |         QString sortsql; | ||||||
|         QStringList splitted_inner = token.value.split(","); |         QStringList splitted_inner = token.value.split(","); | ||||||
|         for(int i = 0; i < splitted_inner.length(); i++) |         for(int i = 0; i < splitted_inner.length(); i++) | ||||||
|         { |         { | ||||||
| @@ -231,7 +231,7 @@ QSqlQuery SqliteSearch::makeSqlQuery(const QVector<SqliteSearch::Token> &tokens) | |||||||
|         { |         { | ||||||
|             sortSql =  "ORDER BY file.mtime DESC, content.page ASC"; |             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 " + whereSql + " " + sortSql + " GROUP BY file.path"; |         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 " + whereSql + " GROUP BY file.path  " + sortSql; | ||||||
|     } |     } | ||||||
|     else |     else | ||||||
|     { |     { | ||||||
| @@ -266,6 +266,7 @@ QVector<SearchResult> SqliteSearch::search(const QString &query) | |||||||
|     { |     { | ||||||
|  |  | ||||||
|         qDebug() << dbQuery.lastError(); |         qDebug() << dbQuery.lastError(); | ||||||
|  |         qDebug() << dbQuery.executedQuery(); | ||||||
|         throw QSSGeneralException("SQL Error: " + dbQuery.lastError().text()); |         throw QSSGeneralException("SQL Error: " + dbQuery.lastError().text()); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user