Python Pandas读取Excel Sheet生成SQL WHERE条件
📅 2026/7/14 16:07:02
👁️ 次浏览
以下代码实现了用 Pandas 读取 Excel并按要求生成分批的 SQL WHERE 条件importpandasaspdimportnumpyasnpfrommathimportceildefbuild_condition(field,value):根据字段值和类型构造单个条件片段ifpd.isna(value):returnf{field}IS NULL# 处理日期时间类型ifisinstance(value,(pd.Timestamp,np.datetime64)):# 转换为 SQL 标准格式的字符串val_strpd.to_datetime(value).strftime(%Y-%m-%d %H:%M:%S)returnf{field} {val_str}# 处理字符串类型ifisinstance(value,str):# 转义单引号替换为一个单引号为两个单引号escapedvalue.replace(,)returnf{field} {escaped}# 处理数值类型int, float, np.numberifisinstance(value,(int,float,np.number)):returnf{field}{value}# 其他情况例如布尔值等作为字符串处理val_strstr(value).replace(,)returnf{field} {val_str}defgenerate_where_batches(df,batch_size100): 将 DataFrame 的每一行转换为 AND 连接的条件组 每 batch_size 个组用 OR 连接为一批返回批次的列表 fieldsdf.columns.tolist()row_conditions[]for_,rowindf.iterrows():# 构建单个行的条件列表conds[]forfieldinfields:condbuild_condition(field,row[field])conds.append(cond)# 用 AND 连接并加上括号形成一个条件组group( AND .join(conds))row_conditions.append(group)# 分批每 batch_size 个组用 OR 连接batches[]foriinrange(0,len(row_conditions),batch_size):batch_groupsrow_conditions[i:ibatch_size]batch_str OR .join(batch_groups)batches.append(batch_str)returnbatches# ------------------- 使用示例 -------------------if__name____main__:# 请替换为实际的 Excel 文件路径excel_filedata.xlsx# 读取 Excel默认读取第一个 sheetdfpd.read_excel(excel_file)# 生成批次条件每 100 条记录为一批batchesgenerate_where_batches(df,batch_size100)# 打印输出每一批foridx,batchinenumerate(batches,start1):print(f--- 第{idx}批 (WHERE 条件部分) ---)print(batch)print()# 空行分隔主要特性说明空值处理pd.isna()检测缺失值生成字段 IS NULL。字符串与日期字符串值用单引号包裹内部单引号替换为两个单引号日期时间格式化为YYYY-MM-DD HH:MM:SS并加单引号。数字整数、浮点数直接拼接不加引号。分批输出每 100 个行条件组用OR连接为一批打印时按批次输出。使用前准备安装依赖若未安装pipinstallpandas openpyxl将脚本中的excel_file路径改为你的 Excel 文件实际路径。运行脚本即可看到控制台输出的分批 WHERE 条件。示例输出片段假设 Excel 有三行数据nameagecreated_atJohn302023-01-01 10:00:00NULL25NULLO’Brien402023-02-01 12:30:00生成的第一批此处只有 3 条仍按 100 条分一批--- 第 1 批 (WHERE 条件部分) --- (name John AND age 30 AND created_at 2023-01-01 10:00:00) OR (name IS NULL AND age 25 AND created_at IS NULL) OR (name OBrien AND age 40 AND created_at 2023-02-01 12:30:00)注意OBrien被正确转义为OBrien。
深度实战指南:HTML与Figma双向转换工具的高效部署与应用 【免费下载链接】figma-html Convert any website to editable Figma designs 项目地址: https://gitcode.com/gh_mirrors/fi/figma-html
HTML to Figma是一款革命性的设计转换工具,能够将…
📅 2026/7/14 16:06:02
终极指南:如何用Anemone3DS打造个性化3DS主题体验 【免费下载链接】Anemone3DS A theme and boot splash manager for the Nintendo 3DS console 项目地址: https://gitcode.com/gh_mirrors/an/Anemone3DS
Anemone3DS是一款专为任天堂3DS游戏机设计的开源主题…
📅 2026/7/14 16:06:02
更多请点击:
https://codechina.net
第一章:Copilot 测试生成模板概览 GitHub Copilot 在测试开发中支持多种语言和框架的自动化测试生成,其核心能力依赖于预定义的测试生成模板(Test Generation Templates)。这些模板…
📅 2026/7/14 16:06:02
1. 电源完整性设计:从“供电”到“赋能”的认知跃迁干了十几年硬件设计,画过的板子堆起来能当凳子坐。早期总觉得电源设计就是“有电就行”,直到被一个1.8GHz的处理器项目狠狠教育了一番——系统时不时死机,调试一个月,…
📅 2026/7/14 16:53:21
1. CANN与AIGC融合的技术背景解析在人工智能计算领域,CANN(Compute Architecture for Neural Networks)作为华为昇腾AI处理器的核心软件栈,正在与AIGC(AI Generated Content)技术形成深度协同效应。这种融合…
📅 2026/7/14 16:53:21
1. 项目背景与核心痛点2026年毕业季临近,各大高校的论文答辩环节普遍引入AI检测机制。根据最新学术规范,论文AI生成率超过15%将面临直接退回风险。许多同学在初稿阶段过度依赖AI辅助写作,临近答辩才发现文本相似度超标,此时距离正…
📅 2026/7/14 16:53:21
1. 项目概述:为什么是C CUDA?如果你是一名C开发者,最近可能经常听到“GPU加速”、“并行计算”这些词。无论是处理海量数据、训练复杂的深度学习模型,还是进行科学模拟,传统的CPU计算已经越来越难以满足我们对性能的渴…
📅 2026/7/14 16:53:21
拖曳线列阵是水下远距离声学探测、海域环境监测、水下目标侦听的核心装备,其水声阵列换能器、低噪声传感单元、流噪抑制算法、微型化缆体结构长期被海外企业构筑技术壁垒。依托全栈自研水声阵列核心技术,偶信科技完成超细径拖曳线列阵全套系统国产化研发…
📅 2026/7/14 16:53:21
3分钟彻底清理Windows此电脑中的顽固快捷方式:MyComputerManager终极解决方案 【免费下载链接】MyComputerManager 管理“此电脑”里删不掉的流氓“快捷方式”(包括侧边栏),同时可自己添加这类“快捷方式” 项目地址: https://g…
📅 2026/7/14 16:52:21
从“创始人投影”到“真理映射”——大语言模型认知本质的哲学批判与范式重构
摘要
当前全球主流大语言模型(LLMs)在技术指标上持续突破,却在认知本质上陷入了一种根本性的“搞反”状态:它们本应成为人类超越自身认知局限的“传…
📅 2026/7/14 0:00:05
Hadoop 3.2.2 JDK 21 Windows开发环境全流程实战指南对于需要在Windows环境下进行大数据开发的Java/Scala开发者来说,搭建一个本地Hadoop开发环境是入门的第一步。本文将带你从零开始,完成Hadoop 3.2.2与JDK 21的环境搭建,并实现一个完整的M…
📅 2026/7/14 0:00:05
1. 项目概述:为什么你需要Boost库? 如果你用C写过一些项目,尤其是涉及到网络、并发、文件系统或者需要处理一些复杂数据结构时,大概率会听过或者用过Boost库。它不是C标准库的一部分,但它在C社区的地位,几…
📅 2026/7/14 0:00:05
豆包openclaw最近圈子里都在聊豆包openclaw,我也没忍住,掏腰包入手了一套。说实话,刚拿到手的时候,心里是打鼓的。毕竟市面上类似的智能硬件太多了,有的吹得天花乱坠,用起来却是一堆bug。为了不让大家的钱打水漂,我连续用了半个月。从开箱到日常高频使用,甚至故意测试它…
📅 2026/7/14 6:35:02
SQLyog 13.3.1 社区版在Windows 10/11上的完整安装与连接指南 对于刚接触MySQL数据库管理的开发者和学生来说,选择一个直观易用的图形化管理工具至关重要。SQLyog作为一款轻量级但功能强大的MySQL GUI工具,能够显著提升数据库操作的效率和体验。本文将详…
📅 2026/7/14 12:06:52
SPEC CPU 2006 跨平台基准测试深度实战:ARM/X86/MIPS 架构配置优化与结果分析方法论在当今多元化的计算架构时代,如何客观评估不同处理器平台的真实性能成为系统工程师和性能优化专家的核心挑战。SPEC CPU 2006 作为业界公认的计算密集型基准测试套件&am…
📅 2026/7/14 7:15:18
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/14 15:11:56
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/13 19:47:36
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/14 15:11:56