当前位置: 首页 > news >正文

mysql json整数数组去重 整数数组精确查找并删除相应数据

都是针对整数数组 。低版本可用。懒得去查找资料的可以参考下。

json整数数组查找具体数据修改或者删除:

update saas_new_tms.eda_logistics_limit  set  service_attribute =json_remove(service_attribute,json_unquote(json_search(replace(service_attribute,7,concat('"',7, '"')), 'one', 7)))  where json_contains(service_attribute, concat(7, '')) = 1 and  logistics_limit_id in (select  logistics_limit_id from eda_logistic_product where transport_type = 1 and  logistics_limit_id is not null);

表:eda_logistics_limit   

列:service_attribute  json类型整组数组数据

要删除的数据:7   

要使用 替换即可

去重:以下查询可以得到一个去重的数据。如果要修改可以参考以上的数据修改。或者 根据所得数据更新即可。

SELECT logistics_limit_id, GROUP_CONCAT(DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(service_attribute, ',', idx), ',', -1) order by idx)
FROM eda_logistics_limit
CROSS JOIN (
  SELECT 1 + units.i + tens.i * 10 + hundreds.i * 100 AS idx
  FROM
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) units,
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) tens,
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) hundreds
) AS numbers
WHERE SUBSTRING_INDEX(SUBSTRING_INDEX(service_attribute, ',', idx), ',', -1) != ''  group by logistics_limit_id;

以下是通过 照搬:其它改表名 改字段即可

CROSS JOIN (
  SELECT 1 + units.i + tens.i * 10 + hundreds.i * 100 AS idx
  FROM
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) units,
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) tens,
    (SELECT 0 i UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5
     UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) hundreds
) AS numbers

http://www.lryc.cn/news/497583.html

相关文章:

  • 【5G】技术组件 Technology Components
  • 数据结构4——栈和队列
  • PHP SM4 加密
  • leetcode - 2825. Make String a Subsequence Using Cyclic Increments
  • 工业—使用Flink处理Kafka中的数据_ChangeRecord1
  • 探索嵌入式硬件设计:揭秘智能设备的心脏
  • 数据结构-最小生成树
  • mac启动jmeter
  • spring学习笔记之静态代理和动态代理
  • qemu搭建aarch64
  • delphi IDE 插件DelphiIDEPlugin_SearchProject,用于从项目组中查找项目
  • 【Vue】Scoped、组件间通信、Props检验
  • openbmc dbus架构简析(二)
  • 【二分查找】Leetcode例题
  • gitlab配置调试minio
  • Vue实战技巧:如何展示附件(PDF、MP4、Excel、Zip等)并修改名称下载
  • AI证件照制作 API 对接说明
  • Macos用brew安装Nodejs亲手教程
  • Node.js 新手教程
  • Latex转word(docx)或者说PDF转word 一个相对靠谱的方式
  • 前端热门面试题目——React、Node
  • Ansible自动化一键部署单节点集群架构
  • 电脑插入耳机和音响,只显示一个播放设备
  • 家政小程序开发,打造便捷家政生活小程序
  • tcpdump抓包wireshark分析
  • 文件无法直接拖入zotero
  • 使用 useMemo 和 React.memo 优化 React 组件渲染
  • ISAAC SIM踩坑记录--添加第三方3D场景
  • Git 详解
  • Linux操作系统3-文件与IO操作1(从C语言IO操作到系统调用)