\Drupal\search\SearchQuery
query extender, used for building Search queries, doesn't allow using expression values with its ::addScore()
method.
SearchQuery
extender.::addScore()
Drupal\Core\Database\DatabaseExceptionWrapper : SQLSTATE[42S22]: Column not found: 1054 Unknown column 'sum' in 'field list': SELECT "i"."type" AS "type", "i"."sid" AS "sid", 2+2 AS "sum", SUM(sum) AS "calculated_score"
FROM
"test81709592search_index" "i"
INNER JOIN "test81709592search_total" "t" ON "i"."word" = "t"."word"
INNER JOIN "test81709592search_dataset" "d" ON "i"."sid" = "d"."sid" AND "i"."type" = "d"."type" AND "i"."langcode" = "d"."langcode"
WHERE (("i"."word" = :db_condition_placeholder_0) OR ("i"."word" = :db_condition_placeholder_1)) AND ("i"."type" = :db_condition_placeholder_2) AND (("d"."data" LIKE :db_condition_placeholder_3 ESCAPE '\\') AND ("d"."data" LIKE :db_condition_placeholder_4 ESCAPE '\\'))
GROUP BY i.type, i.sid
HAVING (COUNT(*) >= :matches)
ORDER BY "calculated_score" DESC; Array
(
[:db_condition_placeholder_0] => foo
[:db_condition_placeholder_1] => bar
[:db_condition_placeholder_2] => test
[:db_condition_placeholder_3] => % foo %
[:db_condition_placeholder_4] => % bar %
[:matches] => 2
)
Allow to use expression values for search result scoring.
Closed: works as designed
11.0 🔥
search.module
Not all content is available!
It's likely this issue predates Contrib.social: some issue and comment data are missing.