三十而立

excel下的文章

最近在为客户做一个库存升级改造的项目,之前客户的数据管理全部是在Excel中操作,估计以前也是没有意识到数据量变大以后,工作会变得如此困难,基本上处于一个无法操作的程度了。于是我们将旧版本的Excel表格格式化以后,导入到新开发的MySQL数据库中发现一个比较有趣的问题:Excel导入MySQL日期为0000-00-00了。

这个问题客户肯定是不能接受的,其实我们已经事先在Excel表中将日期字段设定为日期类型,而且在MySQL中的数据结构也是DATE类型,原以为是不会出错的。经过思考,我们决定用一个低级但很实用的办法来解决这个问题。

第一步:重新格式化Excel日期这个字段。选中日期列→右键单击→设置单元格格式...→自定义→在日期前面加一个特殊字符,这里以a为例,如下图:
a.jpg
设置单元格格式
b.jpg
自定义单元格格式
c.jpg
设置好单元格格式

第二步:选中已经发生格式变化的日期数据,这个时候双击某一个单元格,可以发现那个a会消失,这是因为那个a只是一个格式,所以我们需要把它处理成真正的文本内容:复制并粘贴到记事本中,然后再从记事本中复制粘贴回来,并替换掉现在的内容。

第三步:在MySQL中把日期字段的字符类型修改为varchar(255),接下来就可以把处理后的Excel导入MySQL了。然后使用SQL语句,对已经成功导入但是含有一个a字母的数据进行修改,所使用的SQL语句为:update 表名 set 字段名=replace(字段名,´a´,´´);

第四步:在MySQL中,把日期字段的字符类型重新修改为DATE,然后,然后就大功告成了!

总的说来,这个方法真的没有什么技术含量,但是确确实实是非常实用的,当你在使用其他高科技方法出现错误或效率十分低下的时候,不妨试试我这个笨方法,不但有效,而且速度还很快!至于Excel要如何导入MySQL这里就不再赘述了,后面有时间再单独整理发文,感谢观看,转载请注明出处!

转载自:http://www.chuangluo.com/news_457.html

有时候经常会用到excel导入与导出数据,但对于mysql命令不熟悉的来说,用excel更为直接方便。

1、把linux系统下的时间改为友好阅读时间:

    
//TEXT是格式化,A2指表格位置
=TEXT((A2+8*3600)/86400+70*365+19,"yyyy-mm-dd HH:mm:ss")
//原A2表格中的时间:1473992001,转换后结果:2016-09-16 10:13:21

=TEXT(D2+TIME(8,0,0),"yyyy-mm-dd HH:mm:ss")
//给时间批量加8小时,D2代表单元格,(8,0,0)代表(小时,分,秒)
//执行结果为:2016-09-16 18:13:21

2、截取单元格内前面100个字
完整公式如下:=left(C2,100)
然后使用下拉——》复制 ——》选择性粘贴 ——》粘贴文本

3、2个单元格内容批量合并
完整公式:=A1&A2 //&输入为键盘的:shift+7
然后使用下拉——》复制 ——》选择性粘贴 ——》粘贴文本

4、2张表筛选合并数据
完整公式:点击空白单元格——>插入fx函数——>选择VLOOKUP
查找值:A2 /共同主键,比如:id
数据表:Sheet2!$A:$B //$A为匹配ID,$B为数据
列序数:2 //从第2栏开始
匹配条件:0 //表示模糊匹配
TIM截图20171224103457.jpg
参考:百度百科