#------------------查询操作--------------------
#查询出当前索引中的全部数据
GET /movie_index/_search
GET /movie_index/_search?q=_id:66
#查询全部
GET /movie_index/_search
{
"query": {
"match_all": {}
}
}
#根据电影的名称进行查询
GET /movie_index/_search
{
"query": {
"match": {
"name": "operation red sea"
}
}
}
GET /movie_index
#按分词进行查询
GET /movie_index/_search
{
"query": {
"match": {
"actorList.name": "zhang han yu"
}
}
}
#按短语查询 相当于like
GET /movie_index/_search
{
"query": {
"match_phrase": {
"actorList.name": "zhang han yu"
}
}
}
#不分词 通过精准匹配进行查询 term精准匹配
GET /movie_index/_search
{
"query": {
"term": {
"actorList.name.keyword":"zhang han yu"
}
}
}
#容错匹配
GET /movie_index/_search
{
"query": {
"fuzzy": {
"name": "radd"
}
}
}
#先匹配 再过滤
GET /movie_index/_search
{
"query": {
"match": {
"name": "red"
}
},
"post_filter": {
"term": {
"actorList.id": "3"
}
}
}
#匹配和过滤同时
GET /movie_index/_search
{
"query": {
"bool": {
"must": [
{
"match": {
"name": "red"
}
}
],
"filter": {
"term": {
"actorList.id": "3"
}
}
}
}
}
#范围过滤 ,将豆瓣评分在6到9的文档查询出来
GET /movie_index/_search
{
"query": {
"range": {
"doubanScore": {
"gte": 6,
"lte": 9
}
}
}
}
#按照豆瓣评分降序排序
GET /movie_index/_search
{
"query": {
"match": {
"name": "red"
}
},
"sort": [
{
"doubanScore": {
"order": "asc"
}
}
]
}
#分页查询
GET /movie_index/_search
{
"from": 0,
"size": 2
}
#查询指定字段
GET /movie_index/_search
{
"_source": ["name", "doubanScore"]
}
#高亮显示
GET /movie_index/_search
{
"query": {
"match": {
"name": "red"
}
},
"highlight": {
"fields": {"name":{} },
"pre_tags": "<a>",
"post_tags": "</a>"
}
}