mysql根据某个字段去重数据,使用any_value函数和group by函数

2023-11-19

mysql根据某个字段去重数据,使用any_value函数和group by函数

简单例子

在这里插入图片描述

sql分析

  1. 原sql
    SELECT
    rt.name_ procActivityName,
    rt.ID_ procActivityId,
    re.BUSINESS_KEY_,
    rp.KEY_ processKey,
    a.*,
    u1.user_id createUserId,
    u1.nick_name createUserName,
    u2.user_id assigneeUserId,
    u2.nick_name assigneeUserName
    FROM
    act_ru_task rt
    LEFT JOIN act_ru_execution re ON re.ID_ = rt.PROC_INST_ID_
    RIGHT JOIN asset_bills_run a ON a.bills_id = REPLACE ( re.BUSINESS_KEY_, ‘asset_’, ‘’ )
    LEFT JOIN act_re_procdef rp ON re.PROC_DEF_ID_ = rp.id_
    LEFT JOIN sys_user u1 ON u1.user_name = a.create_by
    LEFT JOIN sys_user u2 ON u2.user_id = rt.ASSIGNEE_
    WHERE
    a.process_run_id IS NOT NULL

在这里插入图片描述

由于这条业务数据对应了两个处理人,导致前面的数据都是一样的,而我只需要展示其中一个处理人就好了.

解决方式

2.新sql
SELECT
any_value(a.bills_id),
any_value(rt.name_) procActivityName,
any_value(rt.ID_) procActivityId,
any_value(re.BUSINESS_KEY_) BUSINESS_KEY_,
any_value(rp.KEY_) processKey,
a.*,
any_value(u1.user_id) createUserId,
any_value(u1.nick_name) createUserName,
any_value(u2.user_id) assigneeUserId,
any_value(u2.nick_name) assigneeUserName
FROM act_ru_task rt
LEFT JOIN act_ru_execution re ON re.ID_ = rt.PROC_INST_ID_
RIGHT JOIN asset_bills_run a ON a.bills_id = REPLACE ( re.BUSINESS_KEY_, ‘asset_’, ‘’ )
LEFT JOIN act_re_procdef rp ON re.PROC_DEF_ID_ = rp.id_
LEFT JOIN sys_user u1 ON u1.user_name = a.create_by
LEFT JOIN sys_user u2 ON u2.user_id = rt.ASSIGNEE_
WHERE
a.process_run_id IS NOT NULL GROUP BY a.bills_id
在这里插入图片描述

参考资料

参考资料:https://www.cnblogs.com/chancy/p/10026097.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql根据某个字段去重数据,使用any_value函数和group by函数 的相关文章

随机推荐

  • 大规模分布式消息中间件简介

    大规模分布式消息中间件简介 当前各种 RPC 中间件技术已经广泛应用于各个领域 其中 服务器之间消息通讯这种功能广泛应用于这些中间件中 于是 将这种面向消息的中间件 Message Oriented Middleware MOM 抽象出来
  • Unity Shader之——UV旋转动画

    Unity中通过Shader实现UV旋转动画 实现一个旋转效果 并且可以控制速度 方法是 以纹理中心为旋转中心 直接上代码如下 Shader Custom Simple Properties Color Color Color 1 1 1
  • How do I develop a service?

    CXF provides you with many options to build services This guide is meant to give you a quick overview of those options a
  • Failed to convert value of type ‘java.lang.String’ to required type ‘java.util.Date’

    springboot项目在接收时间类型的时候 报Failed to convert value of type java lang String to required type java util Date 的错误 这句话的意思是 把字符
  • matplotlib基础作图方法总结

    学习过程中稍微总结一下 有问题的话各位大佬可以指出来 用jupyter作图 代码如下 import numpy as np import matplotlib pyplot as plt 在jupyter中画图时 想要显示图需要 matpl
  • Java中的魔法值和解决方法

    目录 一 什么是魔法值 二 解决方法 一 什么是魔法值 魔法数值 魔法数字 魔法值 这是一个东西 不同的叫法 所谓魔法值 是指在代码中直接出现的数值 只有在这个数值记述的那部分代码中才能明确了解其含义 数字意义必须通过阅读其他代码才能推断出
  • “AI+算力”组合的潜力和机遇

    随着人工智能技术的飞速发展 AI 算力 的结合应用已成为科技行业的热点话题 甚至诞生出 AI 算力 最强龙头 的网络热门等式 这个结合不仅可以提高计算效率 还可以为各行各业带来更强大的数据处理和分析能力 从而推动创新和增长 在我看来 这个时
  • 【深度学习】yolov5 tag7.0 实例分割 从0到1的体会,从模型训练,到量化完成,bug避坑

    这里记录下yolov5 tag7 0的实例分割 因为也用过paddle家族的实例分割 能够训练出来 但是开放restiful api时遇到点小问题 还是yolov爽啊 通过这篇博文 您可以一步步的搭建自己的分割网络 文章目录 前言 一 小试
  • maxwell小白入门

    执行同步binlog数据命令路径 maxwell安装目录下执行启动命令 增量同步命令 bin maxwell config conf meituan 文件目录 具体配置文件名 properties daemon 采集历史数据 bin max
  • Thief in a Shop 【CodeForces - 632E】【背包】

    题目链接 给了N个物品 每个物品无限个 我们要的是求刚好我们拿了K个物品的时候 能组成哪几种数 我们可以想个办法去填充 那么就需要有一个所谓的0状态 然后假如不足K个的时候 就可以拿这个所谓的0状态来填充了 所以 我们把所有的数排序 然后都
  • @FeignClient注解属性

    FeignClient value run product fallback ProductClientServiceFallBack class FeignClient name runClient url localhost 8001
  • Python安装(MacOS )

    1 打开网址 Welcome to Python org 2 点击下载 downloads 2023年7月3日 最新版本 3 11 4 点击macOS 如图所示 点击会跳转到另一个界面 下滑至末尾 点击即可安装 64位的 3 得到一个pkg
  • GLSL常见函数[转]

    radians x 角度转弧度 degrees x 弧度转角度 sin x 正弦函数 传入值为弧度 三角函数与js相同 有cos余弦函数 tan正切函数 asin反正弦 acos反余弦 atan反正切等 pow x y xy exp x e
  • STM32F429通用定时器(TIM)

    目录 一 通用定时器是什么 1 计数模式 2 工作过程 编辑 3 内部时钟选择 二 通用定时器HAL库函数流程 三 小实验程序要求 四 代码实现 1 TIM h 2 TIM c 3 main c 一 通用定时器是什么 通用定时器包含一个 1
  • nginx 处理header 全攻略

    公司的网站要加入动态加速 一个直接的问题是经过转发 客户端请求的头被改了一部分 remote addr这个被改成了自定义的True Client IP 为了不改动已有的程序 需要在nginx那转发的时候把这个头重新打到Remote Addr
  • 代码随想录算法训练营第二十四天|理论基础 77. 组合

    理论基础 其实在讲解二叉树的时候 就给大家介绍过回溯 这次正式开启回溯算法 大家可以先看视频 对回溯算法有一个整体的了解 题目链接 文章讲解 代码随想录 视频讲解 带你学透回溯算法 理论篇 回溯法精讲 哔哩哔哩 bilibili 77 组合
  • nvm安装(Windows篇)

    nvm node version manager node版本管理工具 通过将多个node 版本安装在指定路径 然后通过 nvm 命令切换时 就会切换我们环境变量中 node 命令指定的实际执行的软件路径 使用场景 比如我们手上同时在做好几
  • 使用python抓包并分析后存入数据库,或直接分析tcpdump和wireshark抓到的包,并存入数据库

    准备工作 抓包首先要用到scapy包 安装scapy包 pip install scapy 在python代码中引用scapy包 from scapy all import 为了省事 直接import 你也可以根据你的需求去导入你想用到的
  • 网络安全之基础名词

    网络安全必备基础名词 1 IP地址 1 1 IP地址是什么 1 2 为什么要用IP地址呢 1 3 IP地址的构成 分类 格式 1 3 1 构成 1 3 2 IP地址的分类和格式 2 域名 2 1 什么是域名 2 2 域名访问实例 2 3 域
  • mysql根据某个字段去重数据,使用any_value函数和group by函数

    mysql根据某个字段去重数据 使用any value函数和group by函数 简单例子 sql分析 解决方式 参考资料 简单例子 sql分析 原sql SELECT rt name procActivityName rt ID proc