2016-05-03 8 views
0

Vergleichen Sie zwei Spalten in solr, wenn zwei Felder gleich sind Anzeige true oder else false.Wie zwei Spalten mit Solr zu vergleichen?

CASE WHEN o_is_follow = o_follow_id THEN 'TRUE' ELSE 'FALSE'.

+0

wo es Sie ... während die Indizierung oder während der Suche verglichen werden? –

+0

während der Suche ... – user2707767

Antwort

0

Gemäß wie ich in einem Dokument zu einem anderen Feld ist nicht in jedem Solr unterstützt wissen zu vergleichen.

Ich denke, dass es durch eine Option erreicht werden kann, ein anderes Feld zu erstellen, während nur indexing.

Sie können ein weiteres Feld (boolean) haben. Machen Sie dieses Feld als boolean Typ und kann während der Suche verwendet werden. Erstellen Sie ein o_is_follow_present-Feld, und legen Sie es für Dokumente fest, die zu ihm passen, während indexing.

Verwenden Sie das gleiche Feld wie einer Ihrer Filterkriterien ..

+0

Bitte leiten Sie ein beliebiges Beispiel oder einen Link weiter. – user2707767

+0

können Sie überprüfen, ob dies für Sie funktioniert https: //wiki.apache.org/solr/FunctionQuery#Boolean_Functions ... dies wurde in solr4 hinzugefügt. .... https://cwiki.apache.org/confluence/display/solr/Function+Queries –

+0

like..exists (myField) gibt true zurück, wenn myField einen Wert hat, –