zoukankan      html  css  js  c++  java
  • elasticsearch_dsl 的nested

    在工作中会碰到这样的一个需求,mapping中定义的类型是nested

    {
        "judgement":{
            "mappings":{
                "content":{
                    "_all":{
                        "enabled":false
                    },
                    "_routing":{
                        "required":true
                    },
                    "properties":{
                        "fullJudgement":{
                            "properties":{
                                "caseNumber":{
                                    "type":"text",
                                    "index":false,
                                    "store":true,
                                    "norms":false
                                },
                                "caseType":{
                                    "type":"keyword",
                                    "index":false,
                                    "doc_values":false
                                },
                                "court":{
                                    "type":"keyword",
                                    "index":false,
                                    "store":true,
                                    "doc_values":false
                                },
                                "courtHierarchy":{
                                    "properties":{
                                        "level1":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level2":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        }
                                    }
                                },
                                "courtList":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "courtOpinion":{
                                    "type":"text",
                                    "index":false,
                                    "store":true,
                                    "norms":false
                                },
                                "fullCourt":{
                                    "type":"keyword",
                                    "index":false,
                                    "store":true
                                },
                                "hasHistoricalJudgement":{
                                    "type":"boolean",
                                    "index":false,
                                    "store":true,
                                    "doc_values":false
                                },
                                "hasSimilarJudgement":{
                                    "type":"boolean",
                                    "index":false,
                                    "store":true,
                                    "doc_values":false
                                },
                                "historicalJudgementTimeLines":{
                                    "type":"nested",
                                    "properties":{
                                        "historicalJudgements":{
                                            "type":"nested",
                                            "properties":{
                                                "caseNumber":{
                                                    "type":"keyword",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "courtName":{
                                                    "type":"keyword",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "isCurrentJudgement":{
                                                    "type":"boolean",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "isRecorded":{
                                                    "type":"boolean",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "judgementDate":{
                                                    "type":"date",
                                                    "index":false,
                                                    "ignore_malformed":true,
                                                    "format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
                                                },
                                                "judgementId":{
                                                    "type":"keyword",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "judgementType":{
                                                    "type":"keyword",
                                                    "index":false,
                                                    "doc_values":false
                                                },
                                                "title":{
                                                    "type":"text",
                                                    "index":false,
                                                    "norms":false
                                                },
                                                "trialRound":{
                                                    "type":"short",
                                                    "index":false,
                                                    "doc_values":false,
                                                    "coerce":true
                                                }
                                            }
                                        },
                                        "judgementDate":{
                                            "type":"date",
                                            "index":false,
                                            "ignore_malformed":true,
                                            "format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
                                        }
                                    }
                                },
                                "id":{
                                    "type":"keyword",
                                    "store":true,
                                    "doc_values":false
                                },
                                "judgementAbstract":{
                                    "type":"text",
                                    "index":false,
                                    "norms":false
                                },
                                "judgementContent":{
                                    "type":"text",
                                    "norms":false,
                                    "analyzer":"ik_max_word"
                                },
                                "judgementDate":{
                                    "type":"date",
                                    "store":true,
                                    "ignore_malformed":true,
                                    "format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
                                },
                                "judgementType":{
                                    "type":"keyword",
                                    "store":true,
                                    "eager_global_ordinals":true
                                },
                                "judgementTypeText":{
                                    "type":"text",
                                    "fields":{
                                        "keyword":{
                                            "type":"keyword",
                                            "ignore_above":256
                                        }
                                    }
                                },
                                "judges":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "keywords":{
                                    "type":"keyword",
                                    "store":true,
                                    "eager_global_ordinals":true
                                },
                                "opponentLawyers":{
                                    "type":"nested",
                                    "properties":{
                                        "avatarUrl":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "claimProfileId":{
                                            "type":"text",
                                            "fields":{
                                                "keyword":{
                                                    "type":"keyword",
                                                    "ignore_above":256
                                                }
                                            }
                                        },
                                        "claimUserId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "isClaimed":{
                                            "type":"boolean",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "lawFirm":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "name":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "originalLawFirm":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "originalLawyerName":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "profileId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "status":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false
                                        }
                                    }
                                },
                                "opponents":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "otherLawyers":{
                                    "type":"nested",
                                    "properties":{
                                        "avatarUrl":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "claimProfileId":{
                                            "type":"text",
                                            "fields":{
                                                "keyword":{
                                                    "type":"keyword",
                                                    "ignore_above":256
                                                }
                                            }
                                        },
                                        "claimUserId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "isClaimed":{
                                            "type":"boolean",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "lawFirm":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "name":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "originalLawFirm":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "originalLawyerName":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "profileId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "status":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false
                                        }
                                    }
                                },
                                "paragraphs":{
                                    "type":"nested",
                                    "properties":{
                                        "subParagraphs":{
                                            "type":"nested",
                                            "properties":{
                                                "number":{
                                                    "type":"short",
                                                    "index":false,
                                                    "doc_values":false,
                                                    "coerce":true
                                                },
                                                "text":{
                                                    "type":"text",
                                                    "index":false,
                                                    "norms":false
                                                }
                                            }
                                        },
                                        "type":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false,
                                            "coerce":true
                                        },
                                        "typeText":{
                                            "type":"keyword",
                                            "doc_values":false
                                        }
                                    }
                                },
                                "proponentLawyers":{
                                    "type":"nested",
                                    "properties":{
                                        "avatarUrl":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "claimProfileId":{
                                            "type":"text",
                                            "fields":{
                                                "keyword":{
                                                    "type":"keyword",
                                                    "ignore_above":256
                                                }
                                            }
                                        },
                                        "claimUserId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "isClaimed":{
                                            "type":"boolean",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "lawFirm":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "name":{
                                            "type":"keyword",
                                            "doc_values":false
                                        },
                                        "originalLawFirm":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "originalLawyerName":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "profileId":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "status":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false
                                        }
                                    }
                                },
                                "proponents":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "publishBatch":{
                                    "type":"text",
                                    "index":false,
                                    "norms":false
                                },
                                "publishDate":{
                                    "type":"date",
                                    "index":false,
                                    "doc_values":false,
                                    "ignore_malformed":true,
                                    "format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
                                },
                                "publishType":{
                                    "type":"keyword",
                                    "index":false
                                },
                                "publishTypeHierarchy":{
                                    "properties":{
                                        "level1":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level2":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        }
                                    }
                                },
                                "publishTypeList":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "publishTypeText":{
                                    "type":"keyword",
                                    "index":false,
                                    "store":true,
                                    "doc_values":false
                                },
                                "reason":{
                                    "type":"keyword",
                                    "index":false,
                                    "doc_values":false
                                },
                                "reasonHierarchy":{
                                    "properties":{
                                        "level1":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level2":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level3":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level4":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level5":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        }
                                    }
                                },
                                "reasonList":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "regionHierarchy":{
                                    "properties":{
                                        "level1":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level2":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        },
                                        "level3":{
                                            "type":"keyword",
                                            "index":false,
                                            "eager_global_ordinals":true
                                        }
                                    }
                                },
                                "regionList":{
                                    "type":"keyword",
                                    "doc_values":false
                                },
                                "regulationGroupByTrialRoundInfos":{
                                    "type":"nested",
                                    "properties":{
                                        "regulations":{
                                            "type":"nested",
                                            "properties":{
                                                "id":{
                                                    "type":"keyword",
                                                    "doc_values":false
                                                },
                                                "sectionParagraphs":{
                                                    "type":"nested",
                                                    "properties":{
                                                        "isHit":{
                                                            "type":"boolean",
                                                            "index":false,
                                                            "doc_values":false
                                                        },
                                                        "text":{
                                                            "type":"text",
                                                            "index":false,
                                                            "norms":false
                                                        },
                                                        "type":{
                                                            "type":"short",
                                                            "index":false,
                                                            "doc_values":false,
                                                            "coerce":true
                                                        }
                                                    }
                                                },
                                                "text":{
                                                    "type":"keyword",
                                                    "doc_values":false
                                                }
                                            }
                                        },
                                        "trialRound":{
                                            "type":"long"
                                        },
                                        "trialRoundText":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        }
                                    }
                                },
                                "similarJudgement":{
                                    "properties":{
                                        "attitude":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false,
                                            "coerce":true
                                        },
                                        "court":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "id":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "score":{
                                            "type":"keyword",
                                            "index":false,
                                            "doc_values":false
                                        },
                                        "similarLevel":{
                                            "type":"short",
                                            "index":false,
                                            "doc_values":false,
                                            "coerce":true
                                        },
                                        "title":{
                                            "type":"text",
                                            "index":false,
                                            "norms":false
                                        }
                                    }
                                },
                                "sourceName":{
                                    "type":"keyword",
                                    "index":false,
                                    "doc_values":false
                                },
                                "sourceType":{
                                    "type":"short",
                                    "index":false,
                                    "doc_values":false,
                                    "coerce":true
                                },
                                "sourceUrl":{
                                    "type":"keyword",
                                    "index":false,
                                    "doc_values":false
                                },
                                "title":{
                                    "type":"text",
                                    "store":true,
                                    "analyzer":"ik_max_word"
                                },
                                "trialRound":{
                                    "type":"short",
                                    "index":false,
                                    "doc_values":false,
                                    "coerce":true
                                },
                                "trialRoundText":{
                                    "type":"keyword",
                                    "eager_global_ordinals":true
                                },
                                "trialYear":{
                                    "type":"keyword",
                                    "eager_global_ordinals":true
                                }
                            }
                        },
                        "originalUUID":{
                            "type":"keyword",
                            "doc_values":false
                        },
                        "originalUuid":{
                            "type":"text",
                            "fields":{
                                "keyword":{
                                    "type":"keyword",
                                    "ignore_above":256
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    

      如果想要对fullJudgement.opponentLawyers.name查询二次就需要下面的查询语句

      

    q = Q('nested', path='fullJudgement.opponentLawyers',
              query=Q('term', **{'fullJudgement.opponentLawyers.name': '王美丽'}) & Q('term', **{'fullJudgement.opponentLawyers.name': '王美'}))
    
        ms = Search(using=client, index='judgement', doc_type='content').query(q)
    

      

  • 相关阅读:
    20102012一年的学习总结
    Excel 强大的数据操纵能力
    如何提高软件可维护性
    软件工程中的图
    软件工程需求规格说明书
    Windows下启动和停止命令的bat文件
    为何Spring MVC可获取到方法参数名,而MyBatis却不行?【享学Spring MVC】
    crontab
    (转)windows phone7 练习作品(2)
    (转)Windows Phone 资源文件
  • 原文地址:https://www.cnblogs.com/zhongshuiping/p/10275840.html
Copyright © 2011-2022 走看看