惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Last Week in AI
Last Week in AI
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
大猫的无限游戏
大猫的无限游戏
人人都是产品经理
人人都是产品经理
V
Visual Studio Blog
宝玉的分享
宝玉的分享
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
月光博客
月光博客
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园 - 聂微东
S
SegmentFault 最新的问题
博客园 - 司徒正美
罗磊的独立博客
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
美团技术团队
小众软件
小众软件
Jina AI
Jina AI

博客园 - 赵瑛

如何把一个js的代码变成一个.min.js的文件 thinkphp8有一个木马文件链接 thinkphp 可以居中的分页css样式 thinkphp8无法显示验证码的原因之一 php将内容转为word vue点击复制 vue简单分页 vue无限加载 mpdf增加字体并进行使用 jquery导出word css清除浮动最好的方法 Elasticsearch同时实现and与or查询 Elasticsearch查询指定字段是否有重复数据 elasticsearch进行and,or多条件组合查询 elasticsearch中的and和or php FTP操作类( 拷贝、移动、删除文件/创建目录 ) mysql重置自增id js 双指放大、拖动图片 php操作elasticsearch数据库的方法
查询并删除Elasticsearch库中指定字段重复的数据
赵瑛 · 2023-02-23 · via 博客园 - 赵瑛

比如我要查询Elasticsearch库中字段为:id的有没有重复数据,可以用下面的方法,先查询出来,再执行删除。

$from = 0;
$size = 0;
$url = 'http://127.0.0.1/aaaaaa/_search';
$data['from'] = $from;
$data['size'] = $size;
$data['aggs']['my']['terms'] = ['field'=>'id'];

$post_data = json_encode($data,JSON_UNESCAPED_UNICODE);
$relust = curl_post($url,$post_data);
$relust = json_decode($relust,true);
if(!empty($relust['aggregations']['my']['buckets'])){
    foreach ($relust['aggregations']['my']['buckets'] as $k=>$v)
    {
        $doc_id = $v['key'];
        $url = 'http://127.0.0.1/aaaaaa/_delete_by_query';
        $data = [
            'query'=>['bool'=>['must'=>[['term'=>['id'=>$id]]]]]
        ];
        $data['query']['bool']['filter'][0]['bool']['must']['match_phrase']['id'] = $id;
        $post_data = json_encode($data);
        $relust = curl_post($url,$post_data);
    }
}
return json(['code'=>10000,'msg'=>'删除成功']);