Merge pull request #54 from lbryio/search_updates
I modified the query to be more complex so that relevancy is considered.
This commit is contained in:
commit
429fa8b3c2
1 changed files with 71 additions and 10 deletions
|
@ -28,33 +28,94 @@ function getResults (input) {
|
|||
'query': {
|
||||
'bool': {
|
||||
'should': [
|
||||
{
|
||||
{ // Match search text as phrase - Name
|
||||
'match_phrase': {
|
||||
'name': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 10,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Match search text - Name
|
||||
'match': {
|
||||
'name': {
|
||||
'query': '*' + input.s.trim() + '*',
|
||||
'query': input.s.trim(),
|
||||
'boost': 5,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Contains search term - Name
|
||||
'query_string': {
|
||||
'query' : '*' + input.s.trim() + '*',
|
||||
'fields': [
|
||||
'name',
|
||||
],
|
||||
'boost': 3,
|
||||
},
|
||||
},
|
||||
{
|
||||
'nested': { // Need nested query because value is a nested object on the elastic document
|
||||
'nested': {
|
||||
'path' : 'value',
|
||||
'query': {
|
||||
'bool': {
|
||||
'should': [
|
||||
{
|
||||
'match': {
|
||||
'value.stream.metadata.title': '*' + input.s.trim() + '*',
|
||||
{ // Contains search term in Author, Title, Description
|
||||
'query_string': {
|
||||
'query' : '*' + input.s.trim() + '*',
|
||||
'fields': [
|
||||
'value.stream.metadata.author',
|
||||
'value.stream.metadata.title',
|
||||
'value.stream.metadata.description',
|
||||
],
|
||||
'boost': 1,
|
||||
},
|
||||
},
|
||||
{
|
||||
{ // Match search term - Author
|
||||
'match': {
|
||||
'value.stream.metadata.author': '*' + input.s.trim() + '*',
|
||||
'value.stream.metadata.author': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 2,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
{ // Match search text as phrase - Author
|
||||
'match_phrase': {
|
||||
'value.stream.metadata.author': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Match search term - Title
|
||||
'match': {
|
||||
'value.stream.metadata.description': '*' + input.s.trim() + '*',
|
||||
'value.stream.metadata.title': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 2,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Match search text as phrase - Title
|
||||
'match_phrase': {
|
||||
'value.stream.metadata.title': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Match search term - Description
|
||||
'match': {
|
||||
'value.stream.metadata.description': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 2,
|
||||
},
|
||||
},
|
||||
},
|
||||
{ // Match search text as phrase - Description
|
||||
'match_phrase': {
|
||||
'value.stream.metadata.description': {
|
||||
'query': input.s.trim(),
|
||||
'boost': 3,
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
|
|
Loading…
Reference in a new issue