Sintaxe de pesquisa

O motor SuiteCRM Elasticsearch usa o Query String DSL do Elasticsearch. Isso permite que uma consulta de pesquisa muito avançada seja realizada.

Para um entendimento completo, verifique a documentação oficial. Uma visão geral rápida será fornecida aqui.

 

Exemplos
Pesquise todos os registros com ‘John’ e ‘Doe’ em qualquer campo:
John AND Doe

Pesquise todos os registros com o primeiro nome ‘John’ (observe que isso não inclui ‘Johnny’):
name.first:John

Pesquise todos os registros cujo nome comece com ‘John’:
named:John*

Pesquise todas as contas com ‘corp’ no nome:
named:corp AND _type:Accounts

 

Juntando
Por padrão, as palavras-chave são unidas por cláusulas OR, o que significa que pesquisar John Doe será o mesmo que pesquisar John OR Doe.
É claro que os resultados contendo ‘John’ e ‘Doe’ aparecerão no topo.

 

Boosting
Os nomes são aumentados, o que significa que, se uma das palavras-chave corresponder ao nome, o registro muito provavelmente aparecerá no topo.

 

Curingas
Por padrão, todas as palavras-chave devem corresponder.
Portanto, pesquisar com ‘John’ não corresponderá a alguém chamado ‘Johnathan’.
Para fazer isso, você precisa usar um caractere curinga.

* pode ser usado alternadamente para substituir zero ou mais caracteres.
* pode ser usado para substituir exatamente um caractere.

Pesquise por ‘John’ e ‘Johnathan’:
named:john*

Pesquise todos os sobrenomes que começam com ‘Mc’ ou ‘Mac’:
name.last:(Mc* OR Mac*)

Os curingas também podem ser usados ​​no início da palavra-chave, mas tornará a pesquisa um pouco mais lenta.

Pesquise todos os registros cujo sobrenome termine com ‘Connor’:
name.last:*connor

Pesquisando por módulos Você pode restringir a pesquisa a um ou mais módulos usando a palavra-chave _type e o nome do módulo.

Pesquisar todos os usuários:
_type:Users

 

Metadados
Cada registro possui os seguintes metacampos que podem ser pesquisados:
meta.created.date
meta.created.user_id
meta.created.user_name
meta.modified.date
meta.modified.user_id
meta.modified.user_name
meta.assigned.user_id
meta.assigned.user_name

Pesquise todos os registros criados por ‘John Doe’:
meta.created.user_name:(John Doe)

Pesquise todos os registros modificados no dia primeiro de agosto.
meta.modified.date:”2018-08-01″