如何在4万条数据中快速高效删除excel表指定的2500条数据?

2023-11-04 09:59

本文主要是介绍如何在4万条数据中快速高效删除excel表指定的2500条数据?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    准备工作:
    1、编写删除脏数据的sql

DELETE 
FROMequipment_info 
WHEREid IN (SELECTt.id FROM(SELECTi.id FROMequipment_info iLEFT JOIN base_district d ON i.district_id = d.idLEFT JOIN base_street s ON i.street_id = s.idLEFT JOIN equipment_machine_room r ON i.machine_room_id = r.id WHEREi.NAME = '多级离心泵' AND d.NAME = '淄博碧桂园项目一期别墅苑区' AND s.NAME = '别墅区8街' AND r.NAME = '别墅区1#供水泵房机房' ) t );


    2.了解Excel中=CONCATENATE()的用法(CONCATENATE()是字符串连接或合并函数)

    在做完准备工作后,需要数据在Excel中可以自动填充,语句如下:

=CONCATENATE("DELETE 
FROMequipment_info 
WHEREid IN (SELECTt.id FROM(SELECTi.id FROMequipment_info iLEFT JOIN base_district d ON i.district_id = d.idLEFT JOIN base_street s ON i.street_id = s.idLEFT JOIN equipment_machine_room r ON i.machine_room_id = r.id WHEREi.NAME = '" & A2 & "' AND d.NAME = '" & B2 & "' AND s.NAME = '" & C2 & "' AND r.NAME = '" & D2 & "' ) t );")


    可是把这一串东西放进Excel的单元格时会发现,字符串长度竟然超过255个字符了,真是可恶啊。所以只能进行拆分了,我们拆分成两部分,分别为

(1)

DELETE 
FROMequipment_info 
WHEREid IN (SELECTt.id FROM(SELECTi.id FROMequipment_info iLEFT JOIN base_district d ON i.district_id = d.idLEFT JOIN base_street s ON i.street_id = s.idLEFT JOIN equipment_machine_room r ON i.machine_room_id = r.id


       以上的sql片段作为参数传进去(在这里我把sql片段放到E2单元格上)
 (2)

  WHEREi.NAME = '" & A2 & "' AND d.NAME = '" & B2 & "' AND s.NAME = '" & C2 & "' AND r.NAME = '" & D2 & "' ) t 

    接下来在Excel单元格进行sql的拼接,如下:

=CONCATENATE(E2,"WHEREi.NAME = '" & A2 & "' AND d.NAME = '" & B2 & "' AND s.NAME = '" & C2 & "' AND r.NAME = '" & D2 & "' ) t );")

    以上的组装字符串作为参数传进去(在这里我把组装字符串的函数放到F2单元格上)
    这样就会在Excel中自动生成所需的sql语句了。

"DELETE 
FROMequipment_info 
WHEREid IN (SELECTt.id FROM(SELECTi.id FROMequipment_info iLEFT JOIN base_district d ON i.district_id = d.idLEFT JOIN base_street s ON i.street_id = s.idLEFT JOIN equipment_machine_room r ON i.machine_room_id = r.idWHEREi.NAME = '室内配电柜' AND d.NAME = '淄博碧桂园项目二期流苏园苑区' AND s.NAME = '流苏园3街' AND r.NAME = '流苏园9栋1单元1#电梯机房' ) t );"

     此时的sql多了"",需要进行替换处理,把""替换掉

DELETE 
FROMequipment_info 
WHEREid IN (SELECTt.id FROM(SELECTi.id FROMequipment_info iLEFT JOIN base_district d ON i.district_id = d.idLEFT JOIN base_street s ON i.street_id = s.idLEFT JOIN equipment_machine_room r ON i.machine_room_id = r.idWHEREi.NAME = '室内配电柜' AND d.NAME = '淄博碧桂园项目二期流苏园苑区' AND s.NAME = '流苏园3街' AND r.NAME = '流苏园9栋1单元1#电梯机房' ) t );

    这条sql就是我们所需要的sql啦!

    当然,这只是生成一条数据的sql,如果要生成所有的sql该如何做呢?其实也很简单

    经过以上的步骤,删除2500条数据的sql就写好啦,接下来只需要把这些sql丢到navicat执行就万事大吉啦。

    如有不懂得可以加V:Lemon0493 

这篇关于如何在4万条数据中快速高效删除excel表指定的2500条数据?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/344986

相关文章

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

Java高效实现PowerPoint转PDF的示例详解

《Java高效实现PowerPoint转PDF的示例详解》在日常开发或办公场景中,经常需要将PowerPoint演示文稿(PPT/PPTX)转换为PDF,本文将介绍从基础转换到高级设置的多种用法,大家... 目录为什么要将 PowerPoint 转换为 PDF安装 Spire.Presentation fo

使用EasyPoi快速导出Word文档功能的实现步骤

《使用EasyPoi快速导出Word文档功能的实现步骤》EasyPoi是一个基于ApachePOI的开源Java工具库,旨在简化Excel和Word文档的操作,本文将详细介绍如何使用EasyPoi快速... 目录一、准备工作1、引入依赖二、准备好一个word模版文件三、编写导出方法的工具类四、在Export

Linux命令rm如何删除名字以“-”开头的文件

《Linux命令rm如何删除名字以“-”开头的文件》Linux中,命令的解析机制非常灵活,它会根据命令的开头字符来判断是否需要执行命令选项,对于文件操作命令(如rm、ls等),系统默认会将命令开头的某... 目录先搞懂:为啥“-”开头的文件删不掉?两种超简单的删除方法(小白也能学会)方法1:用“--”分隔命

前端导出Excel文件出现乱码或文件损坏问题的解决办法

《前端导出Excel文件出现乱码或文件损坏问题的解决办法》在现代网页应用程序中,前端有时需要与后端进行数据交互,包括下载文件,:本文主要介绍前端导出Excel文件出现乱码或文件损坏问题的解决办法,... 目录1. 检查后端返回的数据格式2. 前端正确处理二进制数据方案 1:直接下载(推荐)方案 2:手动构造

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

C#利用Free Spire.XLS for .NET复制Excel工作表

《C#利用FreeSpire.XLSfor.NET复制Excel工作表》在日常的.NET开发中,我们经常需要操作Excel文件,本文将详细介绍C#如何使用FreeSpire.XLSfor.NET... 目录1. 环境准备2. 核心功能3. android示例代码3.1 在同一工作簿内复制工作表3.2 在不同

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别