Search with client

The value for expr1 should be any(x='32 GB RAM' for x in CategoryList)

Please read this section Manticore Search Manual: Searching > Filters about how to use multiple AND and OR in a single query.

Okay working fine.
Thanks a lot

Hello team manticore !
I am using client and just want to total number of records from index
So what should be search request ?or which method I have to call ?

Hello team manticore,
Anyone are there ? Please help me for below query…

I tried with match query and match_phrase but they checked the full word(s) for search.
For example, If want to search products/records with word “photoshop” then currently
i have to pass the full word “photoshop”.
But Even I search with “photo” or “shop”, I want to get all the results which contain “photo” or “shop” not only “photoshop”.
Can you please suggest a solution for this? And I am using client

Suppose I have a product named “Adobe Photoshop CS4”, if I pass the keyword = “shop” or “photo” or “ado” or “obe” then I want this product in my result or response.

So suggest a possible solution without using SQL…

But Even I search with “photo” or “shop”, I want to get all the results which contain “photo” or “shop” not only “photoshop”.
Can you please suggest a solution for this? And I am using client

Please read in about infix search - Manticore Search Manual: Creating a table > NLP and tokenization > Wildcard searching settings

I create table, declared min_prefix_len, prefix_fields and dict as below

string tableBody = "create table if not exists products2 (ProductId text,Name string indexed attribute,Sku text,ShortDescription text," +
"FullDescription text,Price float,Published bool,ManufacturerPartNumber text,VendorId integer,Vendor text,CreatedOnUtc bigint,CategoryIds multi," +
"ManufacturerIds multi,ProductTagIds multi,SpecificationOptionIds multi,Categories text,Manufacturers text,ProductAttributeCombinationSku text," +
"ProductAttributes text,SpecificationAttributes text) min_prefix_len = '3' prefix_fields = 'name' dict = 'keywords'";

After that I synced products in products2
I have products that’s name contains “apple” and try to search with “app” from product name
but not getting any matched record. Every time I have to pass “apple” for search.

But I want to search with “app” and want result for “apple”
Why I am not getting any matched record ? Something wrong with my table ?

Here is my c# code for search

var match = "{"match_phrase": { "name,sku,productattributecombinationsku,manufacturerpartnumber,categories,vendor,productattributes,specificationattributes": { "query": "app", "operator":"or" }}}"

var query = JsonConvert.DeserializeObject(match);

var searchRequest = new SearchRequest(index: "products2", query: query);

I do not see why app should match the apple but if you want to get any kind of expansion of the source query you could use expand_keywords index option or the similar query option

min_infix_len = ‘3’ expand_keywords = ‘1’ dict = ‘keywords’

I used this is my table, now its working

Thank you…

I have too many fields in table as mentioned in above questions.

Now I want to restrict infix to fields/column.

I want to use infix in only Name, ShortDescription and FullDescription then what I have to do ?

I tried with below but it not working
min_infix_len = ‘3’ expand_keywords = ‘1’ infix_fields = 'Name,ShortDescription,FullDescription ’ dict = ‘crc’

You should have received:

ERROR 1064 (42000): error adding table 't': RT tables support prefixes and infixes with only dict=keywords

Remove dict='crc'