|NO.Z.00022|——————————|BigDataEnd|——|Hadoop&ElasticSearch.V22|——|ELK.v22|集群|QueryDSL|词条级搜索.V2|

一、词条搜索(term query)
### --- term 查询用于查询指定字段包含某个词项的文档

POST /book/_search
{
"query": {
"term" : { "name" : "solr" }
}
}
二、词条集合搜索(terms query)
### --- terms 查询用于查询指定字段包含某些词项的文档

GET /book/_search
{
"query": {
"terms" : { "name" : ["solr", "elasticsearch"]}
}
}
三、范围搜索(range query)
### --- 范围搜索(range query)

~~~     gte:大于等于
~~~     gt:大于
~~~     lte:小于等于
~~~     lt:小于
~~~     boost:查询权重:在多条件组合查询时,可以手动控制每个条件的比重
GET /book/_search
{
"query": {
"range" : {
"price" : {
"gte" : 10,
"lte" : 200,
"boost" : 2.0
}
}
}
}
GET book/_search
{
"query": {
"range" : {
"timestamp" : {
"gte": "18/08/2020",
"lte": "2021",
"format": "dd/MM/yyyy||yyyy"
}
}
}
}
四、不为空搜索(exists query)
### --- 查询指定字段值不为空的文档。相当 SQL 中的 column is not null

GET /book/_search
{
"query": {
"exists" : { "field" : "price" }
}
}
五、词项前缀搜索(prefix query)
GET /book/_search
{ "query": {
"prefix" : { "name" : "so" }
}
}
六、正则搜索(regexp query)
### --- 正则搜索(regexp query)

~~~     regexp允许使用正则表达式进行term查询.注意regexp如果使用不正确,
~~~     会给服务器带来很严重的性能压力。比如.*
~~~     开头的查询,将会匹配所有的倒排索引中的关键字,这几乎相当于全表扫描,会很慢。
~~~     因此如果可以的话,最好在使用正则前,加上匹配的前缀。
GET /book/_search
{
"query": {
"regexp":{
"name": "s.*"
}
}
}
GET /book/_search
{
"query": {
"regexp":{
"name":{
"value":"s.*",
"boost":1.2
}
}
}
}
八、模糊搜索(fuzzy query)
GET /book/_search
{
"query": {
"fuzzy" : { "name" : "sol" }
}
}
GET /book/_search
{
"query": {
"fuzzy" : { "name" : "so" }
}
}
GET /book/_search
{
"query": {
"fuzzy" : {
"name" : {
"value": "so"
"fuzziness": 2
}
}
}
}
GET /book/_search
{
"query": {
"fuzzy" : {
"name" : {
"value": "sorl"
}
}
}
}
POST /book/_search
{
"query": {
"fuzzy": {
"name": {
"value": "osrl",
"fuzziness":2
}
}
}
}
九、ids搜索(id集合查询)
GET /book/_search
{
"query": {
"ids" : {
"values" : ["1", "3"]
}
}
}

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(11)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示