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″