处理Excel表格里面的数据

场景:

朋友有数万条.xlsx的数据,不知道是怎么来的,也不知道什么原因,订单号跟订单描述写入到了同一栏---订单栏;

现在因为业务需要,想把订单号提取出来单独放一栏;

对一下计算机小白来说,一条一条的复制粘贴几万条数据可能需要几天的时间,而且难免会操作失误造成数据不准确。

思路:

那多对于PHP程序员来说,这个逻辑思路非常的简单;

首先把表格导入到数据库里面去,PHP操作mysql绝配;

然后在数据库里面查询订单信息,在每一条订单信息里面匹配订单号;

然后将匹配的订单号插入到对应的列里面;

这样整个流程就结束了;

剩下的交给计算机完成,肯定用不了一个小时的时间。

解决:

创建一个数据表,对应.xlsx里面的表头;

(这里补充一下,如果.xlsx表里面没有唯一标识字段,最好创建一个,为后面PHP操作提供便利)

打开mysql管理终端Navicat

连接之后找到刚刚创建的表;

右键有一个导入向导;

下一步下一步,选择导入的.xlsx文件,开始导入;

然后刷新,数据就导入了。

将.xlsx数据导入到mysq数据表l就完成了第二步,噢,第一步是建表;

然后在写程序:

连接上数据库,并选择刚创建的表所在的数据库开始操作;不管是mysql,mysqli还是pdo或者直接操作框架,数据库连接的方式不是难点;

查询订单信息,获得查询结果;简单的select语句,入门就可以操作;

遍历查询的结果,foreach函数;

取出数组里面的每一项,开始使用正则表达式匹配订单号;

匹配之前先要观察订单号的特点;首先都是数字,那么就匹配出数字,然后是以0开头的数字,就再加上一个限定条件开头是0,然后长度都是12个字节,那就再加上一个字节限制;

最后就是这样的 "/0\d{11}/"

来个正则匹配,用这个函数preg_match_all($preg,$str,$match);

匹配的结果就是订单号了;

然后再对应着修改原来的订单号,将提取的订单号插入进去就完成了。

时间: 2024-08-29 05:18:07

处理Excel表格里面的数据的相关文章

利用java反射机制实现读取excel表格中的数据

如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.List<Book>等,所以需要使用泛型机制去实现.下面会给出代码,可能会稍微复杂一点,但注释很清晰,希望大家耐心阅读. 在上代码之前简单说一下思路: 1.excel表格必须有表头,且表头中各列的值要与实体类的属性相同: 2.先读取表头信息,然后获取表头列数,接着确定需要使用的set方法的名称,并存到数

Java -&gt; 把Excel表格中的数据写入数据库与从数据库中读出到本地 (未完善)

写入: private void insertFile(HttpServletRequest request, HttpServletResponse response) throws IOException { String path_member = request.getParameter("path_member"); List list = this.insert("f:/tmp001.xls", "gs_sale_members");

桌面支持--Excel表格里的数据全部变成了时间或者日期格式的时候怎么办???

20150601 问题描述:Excel表格里的数据全部变成了时间或者日期格式的时候怎么办??? 解决办法: 1. 打开Excel,任意选中一单元格,单击鼠标右键,选择设置单元格格式. 2. 在数字自定义类型中,找到如图中前缀为[$-F400]的类型格式(或者类似的比如[$-F800]),点击删除.3. 保存,大功告成!再次打开,世界清静了.

怎么把excel表格内的数据导入数据库?

第一种方法: 思路:想要把excel表格内的数据直接导入数据库不是那么容易,可以把excel表格另存为.csv格式的文档(特点:内容以逗号分割):然后通过一系列的文档操作函数处理成为一个二维数组,然后再进一步处理即可导入数据库 思路正确但有时会出现问题(explode这里会出现问题,因为数据中可能也包含","号所以一般不采用此方法,请看第二种方法) 1:准备一个需要导入数据的excel表格: 2:另存为.csv后缀的文档(特点:内容以逗号分割) 3:进行文档操作函数处理 1 $file

Find_Excel_From_Dir获取特定目录下的excel表格,将数据复制出来

1 # -*- coding: utf-8 -*- 2 # -主要思路-,获取解压后的日志文件包 3 # -获取特定目录下的excel表格,将数据复制出来 4 import xdrlib ,sys 5 import xlrd 6 import os 7 import time 8 class Search_Excel_From_Dir: 9 #file_name = "example"#此处确定要搜寻的文件名字 10 Bdc_Csv_list = []#Excel文件列表 11 Bdc

C++中的MFC创建Excel表格和添加数据到Excel表格中的方法

方法1: CStdioFile  File; CString str; File.Open("D\\1.xls",CFile::modeCreate|CFile::modeReadWrite);//如果文件事先不存在的话,就需要CFile::modeCreate,否则就不需要 //关键字:地点 ,  处理类型,  事件开始时间 ,  事件结束时间 ,  处理人 ,  处理时间 ,  上报类型   ,事件录像名称 ,事件图片名称 , 备注 str.Format("%s%c%s%

java读取Excel表格中的数据

1.需求 用java代码读取hello.xls表格中的数据 2.hello.xls表格 3.java代码 package com.test; import java.io.File; import jxl.*; public class ReadExcel{ public static void main(String[] args) { int i; Sheet sheet; Workbook book; Cell cell1,cell2,cell3,cell4,cell5,cell6,cel

Element-ui组件库Table表格导出Excel表格--存在重复数据问题

借鉴:https://www.jianshu.com/p/1971fc5b97ca https://blog.csdn.net/qq_40614207/article/details/94003793 贴出代码 // 定义导出Excel表格事件 exportExcel() { // 解决生成重复数据-因为使用l fixed属性 var fix = document.querySelector('.el-table__fixed') var wb // 判断要导出的节点中是否有fixed的表格,如

php上传excel表格并获取数据

这个是最近需要做的一个功能,在网上也查看了很多相关的文章,基本上大同小异,在这里整理一下. 一:首先是html部分 <html> <body> <form action="upload_file.php" method="post" enctype="multipart/form-data"> <input type="file" name="file" id=&q

使用python脚本,读取excel表格生成erlang数据

为了将excel数据自动转换成所需要的erlang数据,听同事说使用python会很方便简单,就自学了两天python,写了一个比较粗糙的python脚本,不过能用,有什么优化的地方请指教 代码如下: #!/usr/bin/env python # -*- coding: UTF-8 -*- import sys from openpyxl.reader.excel import load_workbook import os import os.path def gen_data(filena