diff --git a/src/main/resources/sql/functions/article/find_articles.sql b/src/main/resources/sql/functions/article/find_articles.sql index 147de59..8d9464a 100644 --- a/src/main/resources/sql/functions/article/find_articles.sql +++ b/src/main/resources/sql/functions/article/find_articles.sql @@ -9,7 +9,7 @@ create or replace function find_articles( ) language plpgsql as $$ begin - select json_agg(t), (select count(id) from article a where _search is null or _search = '' or a ==> dsl.multi_match('{title^3, content, description}', _search)) + select json_agg(t), (select count(id) from article a where (_search is null or _search = '' or a ==> dsl.multi_match('{title^3, content, description}', _search)) and a.is_last_version = true) into resource, total from ( select @@ -17,7 +17,11 @@ begin find_citizen_by_id(a.created_by_id) as created_by, zdb.score(a.ctid) _score from article as a - where _search is null or _search = '' or a ==> dsl.multi_match('{title^3, content, description}', _search) + where ( + _search is null + or _search = '' + or a ==> dsl.multi_match('{title^3, content, description}', _search) + ) and a.is_last_version = true order by _score desc, case direction when 'asc' then