2012-03-22 11 views
6

Estamos haciendo una consulta de solr donde estamos dando una función personalizada (que es bastante compleja) y ordenando los resultados por valor de esa función. La consulta se ve algo como:¿Pueden los valores de función de retorno de solr (no puntaje de solr o campos de documento)?

solr/select?customFunc=complexFunction(querySpecificValue1,querySpecificValue2)&sort_by=$customFunc&fq=...... 

Nuestro entendimiento es que sólo podemos volver a los campos en el documento y anotar Solr de vuelta de Solr. ¿Puede alguien decirnos si podemos obtener el valor calculado de customFunc para cada documento y de qué manera? Por alguna razón, no podemos establecer que la puntuación de solr sea customFunc.

Respuesta

5

Debe usar el parámetro fl para seleccionar pseudo-campos, funciones, etc., pero esto solo se admite en el enlace troncal, que se lanzará con la versión 4.0 de Solr. Eche un vistazo al CommonQueryParameters wiki. El problema SOLR-2444 podría ser interesante también.

Un breve ejemplo:

solr/select?q=*:*&fl=*,customFunc:complexFunction(querySpecificValue1,querySpecificValue2) 
0

Esto me ayudó:

/solr/auction-En/select/?q=*:*_val_:"sum(x,y)"&debugQuery=true&version=2.2&start=0&rows=10&indent=on&fl=*,score 

verá los valores de la función en la parte de depuración.

Cuestiones relacionadas