2016-08-04 8 views
0

So habe ich zwei Tabellen in meiner Datenbank.Abfrage eines bestimmten mehrwertigen Feldes irespective zu Haupteinheit

  1. Benutzer (user_id pk, benutzername, ....).
  2. Ausbildung (ID pk, user_id, College-Name).

und folgend ist die Indexdaten von solr speichern.

docs": [ 
     { 
     "name": "Deepesh", 
     "id": "1", 
     "college_name": [ 
      "Jamnakhal", 
      "Messmore", 
      "IMS" 
     ], 
     "_version_": 1541716111356067800 
     }, 
     { 
     "name": "Uniyal", 
     "id": "2", 
     "college_name": [ 
      "J. I. C.", 
      "ABC", 
      "BCD" 
     ], 
     "_version_": 1541716111356067800 
     }, 

Die vollständige Datensuche ist in Ordnung, aber jetzt habe ich ein mehr requirment für autofill Suchfeld für college_name, so dass ich bin mit EdgeNGramFilterFactory für college_name Spalte Solr ist und auch ist MultiValue- wahr.

aber jetzt, wenn ich versuche, J zu suchen, gibt es mir das Array aller College-Namen entsprechend Benutzer zurück.

das ist ok, in welchem ​​Term habe ich Daten in solr gespeichert. aber wie kann ich mein zweites Problem für AutoFill lösen, wenn ich College-Name J suchen, dann sollte es mir nur College-Namen zurückgeben.

docs ": [{ "college_name": "Jamnakhal" " Version ": 1541716111356067800 }, { "college_name":" J. IC " " Version „: 1541716111356067801 },

Antwort

0

Solr Rückkehr Dokumente passend, in obigem Fall, wenn collage_name Übereinstimmung mit Jamnakhal dann diesem Dokument 1 oder spacefic Feld nicht nur Jamnakhal zurück

+0

Also, wie. kann ich das erreichen, wenn wir nur unterschiedliche College-Namen brauchen. –

Verwandte Themen