Değerleri eşleştirmek için aramayı filtrelemede sorun yaşıyorum.SQL IN Operatör eşdeğeri, Nest İstemcisi ile Elastik Arama
İşte
List<string> DepartmentIds = new List<string>(){"d1","d2","d3","d4"};
term = "*" + "akshay" + "*"
var searchResults = client.Search<Employee>(c => c
.Index(index)
.Type(type)
.Query(+q.Term(f => f.DeptId.ToLower(), DepartmentIds)) // Facing Issue in Matching list of Department IDs
&& ((q.Wildcard(wc => wc.Field(f => f.FirstName).Value(term)))
|| (q.Wildcard(wc => wc.Field(f => f.LastName).Value(term)))
));
orada 10 bölüm ve i departmanı D1, D2, D3 ve D4 gelen sonuçlarını getirmek istediğini söyle benim Kod olduğunu. Temel olarak, indeksli belgede bulunan bölümlerin 4 bölümden herhangi biri ile eşleşip eşleşmediğini görmeliyim.
Departman kimlikleri ve değerleri dinamik olacağından. Temel olarak NEST İstemcisinde operatörde sql eşdeğerini bulmak istiyorum, böylece aramamı uygun şekilde filtreleyebilirim.
Ne kullanırsanız 'Terms' yerine' Term' ait ne işin var? – Val
Merhaba Val. Terimlerini kullanma ile ilgili bir örnek verebilir misiniz? –
'q.Terms (f => f.DeptId.ToLower(), DepartmentIds)' yerine q.Term (f => f.DeptId.ToLower(), DepartmentIds) ' – Val